home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1987-05-16 | 32.1 KB | [ TEXT/MPS ]
open in: MacOS 8.1
extracted
|
Win98
extracted
|
DOS
extracted
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary ).
You can browse this item here: TransSkel.mod
Confidence Program Detection Match Type Support
66%
dexvert
SoundTracker Module (music/soundTracker)
ext
Supported
65%
dexvert
Chip Tracker Module (music/chipTracker)
ext
Supported
64%
dexvert
Protracker Module (music/mod)
ext
Supported
63%
dexvert
Octalyser Module (music/octalyser)
ext
Supported
61%
dexvert
Star Tracker/StarTrekker Module (music/starTracker)
ext
Supported
10%
dexvert
MacBinary (archive/macBinary)
fallback
Supported
1%
dexvert
PollyTracker Module (music/pollyTracker)
ext
Unsupported
1%
dexvert
Text File (text/txt)
fallback
Supported
100%
file
MacBinary II, inited, Sat May 16 09:11:24 1987, modified Sat May 16 09:11:24 1987, creator 'MPS ', type ASCII, 31903 bytes "TransSkel.mod" , at 0x7d1f 744 bytes resource
default (weak)
99%
file
data
default
74%
TrID
Macintosh plain text (MacBinary)
default
25%
TrID
MacBinary 2
default (weak)
100%
siegfried
fmt/1762 MacBinary (II)
default
100%
lsar
MacBinary
default
id metadata key value macFileType [ TEXT] macFileCreator [ MPS ]
hex view +--------+-------------------------+-------------------------+--------+--------+ |00000000| 00 0d 54 72 61 6e 73 53 | 6b 65 6c 2e 6d 6f 64 00 |..TransS|kel.mod.| |00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000040| 00 54 45 58 54 4d 50 53 | 20 01 00 00 00 00 00 00 |.TEXTMPS| .......| |00000050| 00 00 00 00 00 7c 9f 00 | 00 02 e8 9c d2 15 fc 9c |.....|..|........| |00000060| d2 15 fc 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 1e b4 00 00 |........|........| |00000080| 49 4d 50 4c 45 4d 45 4e | 54 41 54 49 4f 4e 20 4d |IMPLEMEN|TATION M| |00000090| 4f 44 55 4c 45 20 54 72 | 61 6e 73 53 6b 65 6c 3b |ODULE Tr|ansSkel;| |000000a0| 0d 0d 28 2a 0d 09 54 72 | 61 6e 73 53 6b 65 6c 20 |..(*..Tr|ansSkel | |000000b0| 76 65 72 73 69 6f 6e 20 | 31 2e 30 33 20 d1 20 54 |version |1.03 . T| |000000c0| 72 61 6e 73 70 6f 72 74 | 61 62 6c 65 20 61 70 70 |ransport|able app| |000000d0| 6c 69 63 61 74 69 6f 6e | 20 73 6b 65 6c 65 74 6f |lication| skeleto| |000000e0| 6e 0d 09 0d 09 54 72 61 | 6e 73 53 6b 65 6c 20 69 |n....Tra|nsSkel i| |000000f0| 73 20 70 75 62 6c 69 63 | 20 64 6f 6d 61 69 6e 20 |s public| domain | |00000100| 61 6e 64 20 74 68 65 20 | 6f 72 69 67 69 6e 61 6c |and the |original| |00000110| 2c 20 43 20 76 65 72 73 | 69 6f 6e 20 69 73 20 77 |, C vers|ion is w| |00000120| 72 69 74 74 65 6e 20 62 | 79 3a 0d 09 09 09 50 61 |ritten b|y:....Pa| |00000130| 75 6c 20 44 75 42 6f 69 | 73 0d 09 09 09 57 69 73 |ul DuBoi|s....Wis| |00000140| 63 6f 6e 73 69 6e 20 52 | 65 67 69 6f 6e 61 6c 20 |consin R|egional | |00000150| 50 72 69 6d 61 74 65 20 | 52 65 73 65 61 72 63 68 |Primate |Research| |00000160| 20 43 65 6e 74 65 72 0d | 09 09 09 31 32 32 30 20 | Center.|...1220 | |00000170| 43 61 70 69 74 6f 6c 20 | 43 6f 75 72 74 0d 09 09 |Capitol |Court...| |00000180| 09 4d 61 64 69 73 6f 6e | 20 57 49 20 35 33 37 30 |.Madison| WI 5370| |00000190| 36 20 20 55 53 41 0d 09 | 55 55 43 50 3a 09 61 6c |6 USA..|UUCP:.al| |000001a0| 6c 65 67 72 61 2c 69 68 | 6e 70 34 2c 73 65 69 73 |legra,ih|np4,seis| |000001b0| 6d 6f 7d 21 75 77 76 61 | 78 21 75 77 6d 61 63 63 |mo}!uwva|x!uwmacc| |000001c0| 21 64 75 62 6f 69 73 0d | 09 41 52 50 41 3a 09 64 |!dubois.|.ARPA:.d| |000001d0| 75 62 6f 69 73 40 75 6e | 69 78 2e 6d 61 63 63 2e |ubois@un|ix.macc.| |000001e0| 77 69 73 63 2e 65 64 75 | 0d 09 09 09 09 64 75 62 |wisc.edu|.....dub| |000001f0| 6f 69 73 40 72 68 65 73 | 75 73 2e 70 72 69 6d 61 |ois@rhes|us.prima| |00000200| 74 65 2e 77 69 73 63 2e | 65 64 75 0d 0d 09 54 68 |te.wisc.|edu...Th| |00000210| 69 73 20 76 65 72 73 69 | 6f 6e 20 6f 66 20 54 72 |is versi|on of Tr| |00000220| 61 6e 73 53 6b 65 6c 20 | 77 72 69 74 74 65 6e 20 |ansSkel |written | |00000230| 62 79 3a 0d 09 09 09 44 | 65 6e 6e 69 73 20 43 6f |by:....D|ennis Co| |00000240| 68 65 6e 0d 09 09 09 32 | 31 35 20 4e 2e 20 4b 65 |hen....2|15 N. Ke| |00000250| 6e 77 6f 6f 64 20 53 74 | 72 65 65 74 2c 20 41 70 |nwood St|reet, Ap| |00000260| 74 2e 20 31 30 32 0d 09 | 09 09 47 6c 65 6e 64 61 |t. 102..|..Glenda| |00000270| 6c 65 2c 20 43 41 20 39 | 31 32 30 36 0d 09 66 6f |le, CA 9|1206..fo| |00000280| 72 20 54 4d 4c 20 4d 6f | 64 75 6c 61 2d 32 2e 20 |r TML Mo|dula-2. | |00000290| 20 54 4d 4c 20 4d 6f 64 | 75 6c 61 2d 32 20 69 73 | TML Mod|ula-2 is| |000002a0| 20 61 20 74 72 61 64 65 | 6d 61 72 6b 20 6f 66 3a | a trade|mark of:| |000002b0| 0d 09 09 09 54 4d 4c 20 | 53 79 73 74 65 6d 73 0d |....TML |Systems.| |000002c0| 09 09 09 34 32 34 31 20 | 42 61 79 6d 65 61 64 6f |...4241 |Baymeado| |000002d0| 77 73 20 52 64 2e 0d 09 | 09 09 4a 61 63 6b 73 6f |ws Rd...|..Jackso| |000002e0| 6e 76 69 6c 6c 65 2c 20 | 46 4c 20 33 32 32 31 37 |nville, |FL 32217| |000002f0| 0d 09 09 09 28 39 30 34 | 29 20 36 33 36 2d 38 35 |....(904|) 636-85| |00000300| 39 32 0d 2a 29 0d 0d 0d | 46 52 4f 4d 20 53 59 53 |92.*)...|FROM SYS| |00000310| 54 45 4d 20 49 4d 50 4f | 52 54 20 41 44 52 2c 20 |TEM IMPO|RT ADR, | |00000320| 41 44 44 52 45 53 53 2c | 20 54 53 49 5a 45 3b 0d |ADDRESS,| TSIZE;.| |00000330| 46 52 4f 4d 20 51 75 69 | 63 6b 44 72 61 77 20 49 |FROM Qui|ckDraw I| |00000340| 4d 50 4f 52 54 20 47 72 | 61 66 50 74 72 2c 20 52 |MPORT Gr|afPtr, R| |00000350| 65 63 74 2c 20 47 65 74 | 50 6f 72 74 2c 20 53 65 |ect, Get|Port, Se| |00000360| 74 50 6f 72 74 2c 20 74 | 68 65 50 6f 72 74 2c 0d |tPort, t|hePort,.| |00000370| 09 09 09 09 09 09 09 09 | 09 09 09 49 6e 69 74 43 |........|...InitC| |00000380| 75 72 73 6f 72 2c 20 53 | 65 74 52 65 63 74 2c 20 |ursor, S|etRect, | |00000390| 49 6e 73 65 74 52 65 63 | 74 2c 20 50 6f 69 6e 74 |InsetRec|t, Point| |000003a0| 2c 20 47 6c 6f 62 61 6c | 54 6f 4c 6f 63 61 6c 3b |, Global|ToLocal;| |000003b0| 0d 46 52 4f 4d 20 44 65 | 73 6b 4d 61 6e 61 67 65 |.FROM De|skManage| |000003c0| 72 20 49 4d 50 4f 52 54 | 20 53 79 73 74 65 6d 54 |r IMPORT| SystemT| |000003d0| 61 73 6b 2c 20 53 79 73 | 74 65 6d 43 6c 69 63 6b |ask, Sys|temClick| |000003e0| 2c 20 4f 70 65 6e 44 65 | 73 6b 41 63 63 3b 0d 46 |, OpenDe|skAcc;.F| |000003f0| 52 4f 4d 20 4d 65 6e 75 | 4d 61 6e 61 67 65 72 20 |ROM Menu|Manager | |00000400| 49 4d 50 4f 52 54 20 48 | 69 6c 69 74 65 4d 65 6e |IMPORT H|iliteMen| |00000410| 75 2c 20 44 72 61 77 4d | 65 6e 75 42 61 72 2c 20 |u, DrawM|enuBar, | |00000420| 44 69 73 70 6f 73 65 4d | 65 6e 75 2c 20 4e 65 77 |DisposeM|enu, New| |00000430| 4d 65 6e 75 2c 20 47 65 | 74 4d 48 61 6e 64 6c 65 |Menu, Ge|tMHandle| |00000440| 2c 0d 09 09 09 09 09 09 | 09 09 09 09 09 09 41 70 |,.......|......Ap| |00000450| 70 65 6e 64 4d 65 6e 75 | 2c 20 41 64 64 52 65 73 |pendMenu|, AddRes| |00000460| 4d 65 6e 75 2c 20 49 6e | 73 65 72 74 4d 65 6e 75 |Menu, In|sertMenu| |00000470| 2c 20 4d 65 6e 75 4b 65 | 79 2c 20 47 65 74 49 74 |, MenuKe|y, GetIt| |00000480| 65 6d 2c 0d 09 09 09 09 | 09 09 09 09 09 09 09 09 |em,.....|........| |00000490| 44 65 6c 65 74 65 4d 65 | 6e 75 2c 20 4d 65 6e 75 |DeleteMe|nu, Menu| |000004a0| 53 65 6c 65 63 74 2c 20 | 4d 65 6e 75 48 61 6e 64 |Select, |MenuHand| |000004b0| 6c 65 3b 0d 46 52 4f 4d | 20 45 76 65 6e 74 4d 61 |le;.FROM| EventMa| |000004c0| 6e 61 67 65 72 20 49 4d | 50 4f 52 54 20 45 76 65 |nager IM|PORT Eve| |000004d0| 6e 74 52 65 63 6f 72 64 | 2c 20 65 76 65 72 79 45 |ntRecord|, everyE| |000004e0| 76 65 6e 74 2c 20 46 6c | 75 73 68 45 76 65 6e 74 |vent, Fl|ushEvent| |000004f0| 73 2c 20 47 65 74 4e 65 | 78 74 45 76 65 6e 74 2c |s, GetNe|xtEvent,| |00000500| 0d 09 09 09 09 09 09 09 | 09 09 09 09 09 6d 6f 75 |........|.....mou| |00000510| 73 65 44 6f 77 6e 2c 20 | 64 69 73 6b 45 76 74 2c |seDown, |diskEvt,| |00000520| 20 61 63 74 69 76 61 74 | 65 45 76 74 2c 20 75 70 | activat|eEvt, up| |00000530| 64 61 74 65 45 76 74 2c | 20 64 69 73 6b 4d 61 73 |dateEvt,| diskMas| |00000540| 6b 2c 0d 09 09 09 09 09 | 09 09 09 09 09 09 09 6b |k,......|.......k| |00000550| 65 79 44 6f 77 6e 2c 20 | 61 75 74 6f 4b 65 79 2c |eyDown, |autoKey,| |00000560| 20 63 6d 64 4b 65 79 2c | 20 61 63 74 69 76 65 46 | cmdKey,| activeF| |00000570| 6c 61 67 2c 20 63 68 61 | 72 43 6f 64 65 4d 61 73 |lag, cha|rCodeMas| |00000580| 6b 2c 0d 09 09 09 09 09 | 09 09 09 09 09 09 09 6e |k,......|.......n| |00000590| 75 6c 6c 45 76 65 6e 74 | 3b 0d 46 52 4f 4d 20 55 |ullEvent|;.FROM U| |000005a0| 74 69 6c 69 74 69 65 73 | 20 49 4d 50 4f 52 54 20 |tilities| IMPORT | |000005b0| 48 69 57 6f 72 64 2c 20 | 4c 6f 57 6f 72 64 2c 20 |HiWord, |LoWord, | |000005c0| 42 69 74 41 6e 64 3b 0d | 46 52 4f 4d 20 57 69 6e |BitAnd;.|FROM Win| |000005d0| 64 6f 77 4d 61 6e 61 67 | 65 72 20 49 4d 50 4f 52 |dowManag|er IMPOR| |000005e0| 54 20 57 69 6e 64 6f 77 | 50 74 72 2c 20 4d 6f 76 |T Window|Ptr, Mov| |000005f0| 65 57 69 6e 64 6f 77 2c | 20 53 69 7a 65 57 69 6e |eWindow,| SizeWin| |00000600| 64 6f 77 2c 20 47 72 6f | 77 57 69 6e 64 6f 77 2c |dow, Gro|wWindow,| |00000610| 0d 09 09 09 09 09 09 09 | 09 09 09 09 09 09 54 72 |........|......Tr| |00000620| 61 63 6b 47 6f 41 77 61 | 79 2c 20 48 69 64 65 57 |ackGoAwa|y, HideW| |00000630| 69 6e 64 6f 77 2c 20 42 | 65 67 69 6e 55 70 64 61 |indow, B|eginUpda| |00000640| 74 65 2c 20 45 6e 64 55 | 70 64 61 74 65 2c 0d 09 |te, EndU|pdate,..| |00000650| 09 09 09 09 09 09 09 09 | 09 09 09 09 49 6e 76 61 |........|....Inva| |00000660| 6c 52 65 63 74 2c 20 56 | 61 6c 69 64 52 65 63 74 |lRect, V|alidRect| |00000670| 2c 20 46 69 6e 64 57 69 | 6e 64 6f 77 2c 20 53 65 |, FindWi|ndow, Se| |00000680| 6c 65 63 74 57 69 6e 64 | 6f 77 2c 0d 09 09 09 09 |lectWind|ow,.....| |00000690| 09 09 09 09 09 09 09 09 | 09 44 72 61 67 57 69 6e |........|.DragWin| |000006a0| 64 6f 77 2c 20 44 69 73 | 70 6f 73 65 57 69 6e 64 |dow, Dis|poseWind| |000006b0| 6f 77 2c 20 47 65 74 57 | 4d 67 72 50 6f 72 74 2c |ow, GetW|MgrPort,| |000006c0| 20 69 6e 4d 65 6e 75 42 | 61 72 2c 0d 09 09 09 09 | inMenuB|ar,.....| |000006d0| 09 09 09 09 09 09 09 09 | 09 69 6e 53 79 73 57 69 |........|.inSysWi| |000006e0| 6e 64 6f 77 2c 20 69 6e | 43 6f 6e 74 65 6e 74 2c |ndow, in|Content,| |000006f0| 20 69 6e 44 72 61 67 2c | 20 69 6e 47 6f 41 77 61 | inDrag,| inGoAwa| |00000700| 79 2c 0d 09 09 09 09 09 | 09 09 09 09 09 09 09 09 |y,......|........| |00000710| 69 6e 47 72 6f 77 2c 20 | 46 72 6f 6e 74 57 69 6e |inGrow, |FrontWin| |00000720| 64 6f 77 2c 20 54 72 61 | 63 6b 42 6f 78 2c 20 69 |dow, Tra|ckBox, i| |00000730| 6e 5a 6f 6f 6d 49 6e 2c | 20 69 6e 5a 6f 6f 6d 4f |nZoomIn,| inZoomO| |00000740| 75 74 2c 0d 09 09 09 09 | 09 09 09 09 09 09 09 09 |ut,.....|........| |00000750| 09 57 69 6e 64 6f 77 50 | 65 65 6b 2c 20 64 69 61 |.WindowP|eek, dia| |00000760| 6c 6f 67 4b 69 6e 64 2c | 20 5a 6f 6f 6d 57 69 6e |logKind,| ZoomWin| |00000770| 64 6f 77 3b 0d 46 52 4f | 4d 20 44 69 61 6c 6f 67 |dow;.FRO|M Dialog| |00000780| 4d 61 6e 61 67 65 72 20 | 49 4d 50 4f 52 54 20 44 |Manager |IMPORT D| |00000790| 69 61 6c 6f 67 50 74 72 | 2c 20 49 73 44 69 61 6c |ialogPtr|, IsDial| |000007a0| 6f 67 45 76 65 6e 74 2c | 20 44 69 61 6c 6f 67 53 |ogEvent,| DialogS| |000007b0| 65 6c 65 63 74 3b 0d 46 | 52 4f 4d 20 44 49 50 61 |elect;.F|ROM DIPa| |000007c0| 63 6b 61 67 65 20 49 4d | 50 4f 52 54 20 44 49 4c |ckage IM|PORT DIL| |000007d0| 6f 61 64 2c 20 44 49 55 | 6e 4c 6f 61 64 2c 20 44 |oad, DIU|nLoad, D| |000007e0| 49 42 61 64 4d 6f 75 6e | 74 3b 0d 46 52 4f 4d 20 |IBadMoun|t;.FROM | |000007f0| 46 6f 6e 74 4d 61 6e 61 | 67 65 72 20 49 4d 50 4f |FontMana|ger IMPO| |00000800| 52 54 20 61 70 70 6c 65 | 4d 61 72 6b 20 28 2a 2c |RT apple|Mark (*,| |00000810| 20 49 6e 69 74 46 6f 6e | 74 73 20 2a 29 3b 0d 46 | InitFon|ts *);.F| |00000820| 52 4f 4d 20 45 72 72 6f | 72 73 20 49 4d 50 4f 52 |ROM Erro|rs IMPOR| |00000830| 54 20 6e 6f 45 72 72 3b | 0d 46 52 4f 4d 20 53 74 |T noErr;|.FROM St| |00000840| 72 69 6e 67 73 20 49 4d | 50 4f 52 54 20 4c 65 6e |rings IM|PORT Len| |00000850| 67 74 68 2c 20 53 74 72 | 32 35 35 2c 20 4d 61 6b |gth, Str|255, Mak| |00000860| 65 50 61 73 63 61 6c 53 | 74 72 69 6e 67 3b 0d 46 |ePascalS|tring;.F| |00000870| 52 4f 4d 20 4d 65 6d 6f | 72 79 4d 61 6e 61 67 65 |ROM Memo|ryManage| |00000880| 72 20 49 4d 50 4f 52 54 | 20 4d 61 78 41 70 70 6c |r IMPORT| MaxAppl| |00000890| 5a 6f 6e 65 2c 20 4e 65 | 77 48 61 6e 64 6c 65 2c |Zone, Ne|wHandle,| |000008a0| 20 44 69 73 70 6f 73 48 | 61 6e 64 6c 65 3b 0d 28 | DisposH|andle;.(| |000008b0| 2a 20 46 52 4f 4d 20 54 | 65 78 74 45 64 69 74 20 |* FROM T|extEdit | |000008c0| 49 4d 50 4f 52 54 20 54 | 45 49 6e 69 74 3b 20 2a |IMPORT T|EInit; *| |000008d0| 29 0d 0d 43 4f 4e 53 54 | 0d 09 6d 42 61 72 48 65 |)..CONST|..mBarHe| |000008e0| 69 67 68 74 20 3d 20 32 | 30 3b 09 28 2a 09 4d 65 |ight = 2|0;.(*.Me| |000008f0| 6e 75 20 62 61 72 20 68 | 65 69 67 68 74 2e 20 20 |nu bar h|eight. | |00000900| 41 6c 6c 20 77 69 6e 64 | 6f 77 20 73 69 7a 69 6e |All wind|ow sizin| |00000910| 67 20 72 6f 75 74 69 6e | 65 73 20 74 61 6b 65 20 |g routin|es take | |00000920| 74 68 69 73 0d 09 09 09 | 09 09 09 09 09 09 09 09 |this....|........| |00000930| 09 69 6e 74 6f 20 61 63 | 63 6f 75 6e 74 2e 20 2a |.into ac|count. *| |00000940| 29 0d 0d 54 59 50 45 0d | 09 28 2a 0d 09 09 57 69 |)..TYPE.|.(*...Wi| |00000950| 6e 64 6f 77 20 61 6e 64 | 20 6d 65 6e 75 20 68 61 |ndow and| menu ha| |00000960| 6e 64 6c 65 72 20 74 79 | 70 65 73 2c 20 63 6f 6e |ndler ty|pes, con| |00000970| 73 74 61 6e 74 73 20 61 | 6e 64 20 76 61 72 69 61 |stants a|nd varia| |00000980| 62 6c 65 73 2e 0d 0d 09 | 09 77 68 4c 69 73 74 20 |bles....|.whList | |00000990| 61 6e 64 20 6d 68 4c 69 | 73 74 20 61 72 65 20 74 |and mhLi|st are t| |000009a0| 68 65 20 6c 69 73 74 73 | 20 6f 66 20 77 69 6e 64 |he lists| of wind| |000009b0| 6f 77 20 61 6e 64 20 6d | 65 6e 75 20 68 61 6e 64 |ow and m|enu hand| |000009c0| 6c 65 72 73 2e 20 20 77 | 68 43 6c 6f 62 4f 6e 52 |lers. w|hClobOnR| |000009d0| 6d 76 65 0d 09 09 61 6e | 64 20 6d 68 43 6c 6f 62 |mve...an|d mhClob| |000009e0| 4f 6e 52 6d 76 65 20 61 | 72 65 20 74 72 75 65 20 |OnRmve a|re true | |000009f0| 69 66 20 74 68 65 20 68 | 61 6e 64 6c 65 72 20 64 |if the h|andler d| |00000a00| 69 73 70 6f 73 61 6c 20 | 70 72 6f 63 20 69 73 20 |isposal |proc is | |00000a10| 74 6f 20 62 65 20 63 61 | 6c 6c 65 64 20 77 68 65 |to be ca|lled whe| |00000a20| 6e 0d 09 09 61 20 68 61 | 6e 64 6c 65 72 20 69 73 |n...a ha|ndler is| |00000a30| 20 74 6f 20 62 65 20 72 | 65 6d 6f 76 65 64 2e 20 | to be r|emoved. | |00000a40| 20 54 68 65 79 20 61 72 | 65 20 74 65 6d 70 6f 72 | They ar|e tempor| |00000a50| 61 72 69 6c 79 20 73 65 | 74 20 66 61 6c 73 65 20 |arily se|t false | |00000a60| 77 68 65 6e 20 68 61 6e | 64 6c 65 72 73 20 61 72 |when han|dlers ar| |00000a70| 65 0d 09 09 69 6e 73 74 | 61 6c 6c 65 64 20 66 6f |e...inst|alled fo| |00000a80| 72 20 77 69 6e 64 6f 77 | 73 20 6f 72 20 6d 65 6e |r window|s or men| |00000a90| 75 73 20 74 68 61 74 20 | 61 6c 72 65 61 64 79 20 |us that |already | |00000aa0| 68 61 76 65 20 68 61 6e | 64 6c 65 72 73 20 2d 20 |have han|dlers - | |00000ab0| 74 68 65 20 6f 6c 64 20 | 68 61 6e 64 6c 65 72 0d |the old |handler.| |00000ac0| 09 09 69 73 20 72 65 6d | 6f 76 65 64 20 57 49 54 |..is rem|oved WIT| |00000ad0| 48 4f 55 54 20 63 61 6c | 6c 69 6e 67 20 74 68 65 |HOUT cal|ling the| |00000ae0| 20 64 69 73 70 6f 73 61 | 6c 20 70 72 6f 63 2e 0d | disposa|l proc..| |00000af0| 0d 09 09 44 65 66 61 75 | 6c 74 20 6c 6f 77 65 72 |...Defau|lt lower| |00000b00| 20 6c 69 6d 69 74 73 20 | 6f 6e 20 77 69 6e 64 6f | limits |on windo| |00000b10| 77 20 73 69 7a 69 6e 67 | 20 6f 66 20 38 30 20 70 |w sizing| of 80 p| |00000b20| 69 78 65 6c 73 20 69 6e | 20 62 6f 74 68 20 64 69 |ixels in| both di| |00000b30| 72 65 63 74 69 6f 6e 73 | 20 69 73 0d 09 09 73 75 |rections| is...su| |00000b40| 66 66 69 63 69 65 6e 74 | 20 74 6f 20 61 6c 6c 6f |fficient| to allo| |00000b50| 77 20 74 65 78 74 20 77 | 69 6e 64 6f 77 73 20 72 |w text w|indows r| |00000b60| 6f 6f 6d 20 74 6f 20 64 | 72 61 77 20 61 20 67 72 |oom to d|raw a gr| |00000b70| 6f 77 20 62 6f 78 20 61 | 6e 64 20 73 63 72 6f 6c |ow box a|nd scrol| |00000b80| 6c 20 62 61 72 73 0d 09 | 09 77 69 74 68 6f 75 74 |l bars..|.without| |00000b90| 20 68 61 76 69 6e 67 20 | 74 68 65 20 74 68 75 6d | having |the thum| |00000ba0| 62 73 20 61 6e 64 20 61 | 72 72 6f 77 73 20 6f 76 |bs and a|rrows ov| |00000bb0| 65 72 6c 61 70 2e 20 20 | 54 68 65 73 65 20 76 61 |erlap. |These va| |00000bc0| 6c 75 65 73 20 6d 61 79 | 20 62 65 20 63 68 61 6e |lues may| be chan| |00000bd0| 67 65 64 0d 09 09 69 66 | 20 73 75 63 68 20 61 20 |ged...if| such a | |00000be0| 63 6f 6e 73 74 72 61 69 | 6e 74 20 69 73 20 75 6e |constrai|nt is un| |00000bf0| 64 65 73 69 72 61 62 6c | 65 20 77 69 74 68 20 53 |desirabl|e with S| |00000c00| 6b 65 6c 47 72 6f 77 42 | 6f 75 6e 64 73 2e 20 20 |kelGrowB|ounds. | |00000c10| 44 65 66 61 75 6c 74 20 | 75 70 70 65 72 0d 09 09 |Default |upper...| |00000c20| 6c 69 6d 69 74 73 20 61 | 72 65 20 66 6f 72 20 74 |limits a|re for t| |00000c30| 68 65 20 4d 61 63 69 6e | 74 6f 73 68 20 28 6e 6f |he Macin|tosh (no| |00000c40| 74 20 74 68 65 20 58 4c | 20 6f 72 20 4d 61 63 20 |t the XL| or Mac | |00000c50| 49 49 29 2c 20 62 75 74 | 20 61 72 65 20 73 65 74 |II), but| are set| |00000c60| 20 70 65 72 0d 09 09 6d | 61 63 68 69 6e 65 20 69 | per...m|achine i| |00000c70| 6e 20 53 6b 65 6c 49 6e | 69 74 2e 0d 09 2a 29 0d |n SkelIn|it...*).| |00000c80| 0d 09 57 48 61 6e 64 6c | 65 72 48 64 6c 20 3d 20 |..WHandl|erHdl = | |00000c90| 50 4f 49 4e 54 45 52 20 | 54 4f 20 57 48 61 6e 64 |POINTER |TO WHand| |00000ca0| 6c 65 72 50 74 72 3b 0d | 09 57 48 61 6e 64 6c 65 |lerPtr;.|.WHandle| |00000cb0| 72 50 74 72 20 3d 20 50 | 4f 49 4e 54 45 52 20 54 |rPtr = P|OINTER T| |00000cc0| 4f 20 57 48 61 6e 64 6c | 65 72 3b 0d 09 57 48 61 |O WHandl|er;..WHa| |00000cd0| 6e 64 6c 65 72 20 3d 0d | 09 09 52 45 43 4f 52 44 |ndler =.|..RECORD| |00000ce0| 0d 09 09 09 77 68 57 69 | 6e 64 3a 09 09 09 57 69 |....whWi|nd:...Wi| |00000cf0| 6e 64 6f 77 50 74 72 3b | 09 09 09 28 2a 20 57 69 |ndowPtr;|...(* Wi| |00000d00| 6e 64 6f 77 20 74 6f 20 | 62 65 20 68 61 6e 64 6c |ndow to |be handl| |00000d10| 65 64 20 2a 29 0d 09 09 | 09 77 68 43 6c 6f 62 62 |ed *)...|.whClobb| |00000d20| 65 72 3a 09 57 43 6c 6f | 62 62 65 72 50 72 6f 63 |er:.WClo|bberProc| |00000d30| 3b 09 09 28 2a 20 44 61 | 74 61 20 73 74 72 75 63 |;..(* Da|ta struc| |00000d40| 74 75 72 65 20 64 69 73 | 70 6f 73 61 6c 20 70 72 |ture dis|posal pr| |00000d50| 6f 63 20 2a 29 0d 09 09 | 09 77 68 4d 6f 75 73 65 |oc *)...|.whMouse| |00000d60| 3a 09 09 57 4d 6f 75 73 | 65 50 72 6f 63 3b 09 09 |:..WMous|eProc;..| |00000d70| 09 28 2a 20 4d 6f 75 73 | 65 2d 63 6c 69 63 6b 20 |.(* Mous|e-click | |00000d80| 68 61 6e 64 6c 65 72 20 | 70 72 6f 63 20 2a 29 0d |handler |proc *).| |00000d90| 09 09 09 77 68 4b 65 79 | 3a 09 09 09 57 4b 65 79 |...whKey|:...WKey| |00000da0| 50 72 6f 63 3b 09 09 09 | 09 28 2a 20 4b 65 79 2d |Proc;...|.(* Key-| |00000db0| 63 6c 69 63 6b 20 68 61 | 6e 64 6c 65 72 20 70 72 |click ha|ndler pr| |00000dc0| 6f 63 20 2a 29 0d 09 09 | 09 77 68 55 70 64 61 74 |oc *)...|.whUpdat| |00000dd0| 65 3a 09 09 57 55 70 64 | 61 74 65 50 72 6f 63 3b |e:..WUpd|ateProc;| |00000de0| 09 09 28 2a 20 55 70 64 | 61 74 65 20 65 76 65 6e |..(* Upd|ate even| |00000df0| 74 20 68 61 6e 64 6c 65 | 72 20 70 72 6f 63 20 2a |t handle|r proc *| |00000e00| 29 0d 09 09 09 77 68 41 | 63 74 69 76 61 74 65 3a |)....whA|ctivate:| |00000e10| 09 57 41 63 74 69 76 61 | 74 65 50 72 6f 63 3b 09 |.WActiva|teProc;.| |00000e20| 28 2a 20 41 63 74 69 76 | 61 74 65 20 65 76 65 6e |(* Activ|ate even| |00000e30| 74 20 68 61 6e 64 6c 65 | 72 20 70 72 6f 63 20 2a |t handle|r proc *| |00000e40| 29 0d 09 09 09 77 68 43 | 6c 6f 73 65 3a 09 09 57 |)....whC|lose:..W| |00000e50| 43 6c 6f 73 65 50 72 6f | 63 3b 09 09 09 28 2a 20 |ClosePro|c;...(* | |00000e60| 43 6c 6f 73 65 20 77 69 | 6e 64 6f 77 20 68 61 6e |Close wi|ndow han| |00000e70| 64 6c 65 72 20 70 72 6f | 63 20 2a 29 0d 09 09 09 |dler pro|c *)....| |00000e80| 77 68 49 64 6c 65 3a 09 | 09 09 57 49 64 6c 65 50 |whIdle:.|..WIdleP| |00000e90| 72 6f 63 3b 09 09 09 28 | 2a 20 4d 61 69 6e 20 6c |roc;...(|* Main l| |00000ea0| 6f 6f 70 20 70 72 6f 63 | 20 2a 29 0d 09 09 09 77 |oop proc| *)....w| |00000eb0| 68 45 76 65 6e 74 3a 09 | 09 57 45 76 65 6e 74 50 |hEvent:.|.WEventP| |00000ec0| 72 6f 63 3b 09 09 09 28 | 2a 20 44 69 61 6c 6f 67 |roc;...(|* Dialog| |00000ed0| 20 45 76 65 6e 74 20 68 | 6f 6f 6b 20 70 72 6f 63 | Event h|ook proc| |00000ee0| 20 2a 29 0d 09 09 09 77 | 68 47 72 6f 77 3a 09 09 | *)....w|hGrow:..| |00000ef0| 09 52 65 63 74 3b 09 09 | 09 09 09 09 28 2a 20 4c |.Rect;..|....(* L| |00000f00| 69 6d 69 74 73 20 6f 6e | 20 77 69 6e 64 6f 77 20 |imits on| window | |00000f10| 73 69 7a 69 6e 67 20 2a | 29 0d 09 09 09 77 68 53 |sizing *|)....whS| |00000f20| 69 7a 65 64 3a 09 09 42 | 4f 4f 4c 45 41 4e 3b 09 |ized:..B|OOLEAN;.| |00000f30| 09 09 09 28 2a 20 54 72 | 75 65 20 69 66 20 77 69 |...(* Tr|ue if wi| |00000f40| 6e 64 6f 77 20 68 61 73 | 20 62 65 65 6e 20 72 65 |ndow has| been re| |00000f50| 73 69 7a 65 64 20 2a 29 | 0d 09 09 09 77 68 46 72 |sized *)|....whFr| |00000f60| 6f 6e 74 4f 6e 6c 79 3a | 42 4f 4f 4c 45 41 4e 3b |ontOnly:|BOOLEAN;| |00000f70| 09 09 09 09 28 2a 20 54 | 72 75 65 20 69 66 20 69 |....(* T|rue if i| |00000f80| 64 6c 65 20 6f 6e 6c 79 | 20 77 68 65 6e 20 69 6e |dle only| when in| |00000f90| 20 66 72 6f 6e 74 20 2a | 29 0d 09 09 09 77 68 4e | front *|)....whN| |00000fa0| 65 78 74 3a 09 09 09 57 | 48 61 6e 64 6c 65 72 48 |ext:...W|HandlerH| |00000fb0| 64 6c 3b 09 09 28 2a 20 | 4e 65 78 74 20 77 69 6e |dl;..(* |Next win| |00000fc0| 64 6f 77 20 68 61 6e 64 | 6c 65 72 20 2a 29 0d 09 |dow hand|ler *)..| |00000fd0| 09 45 4e 44 3b 0d 0d 56 | 41 52 0d 09 77 68 4c 69 |.END;..V|AR..whLi| |00000fe0| 73 74 3a 09 57 48 61 6e | 64 6c 65 72 48 64 6c 3b |st:.WHan|dlerHdl;| |00000ff0| 0d 09 77 68 43 6c 6f 62 | 4f 6e 52 6d 76 65 3a 20 |..whClob|OnRmve: | |00001000| 42 4f 4f 4c 45 41 4e 3b | 0d 09 67 72 6f 77 52 65 |BOOLEAN;|..growRe| |00001010| 63 74 3a 20 52 65 63 74 | 3b 0d 0d 54 59 50 45 0d |ct: Rect|;..TYPE.| |00001020| 09 4d 48 61 6e 64 6c 65 | 72 48 64 6c 20 3d 20 50 |.MHandle|rHdl = P| |00001030| 4f 49 4e 54 45 52 20 54 | 4f 20 4d 48 61 6e 64 6c |OINTER T|O MHandl| |00001040| 65 72 50 74 72 3b 0d 09 | 4d 48 61 6e 64 6c 65 72 |erPtr;..|MHandler| |00001050| 50 74 72 20 3d 20 50 4f | 49 4e 54 45 52 20 54 4f |Ptr = PO|INTER TO| |00001060| 20 4d 48 61 6e 64 6c 65 | 72 3b 0d 09 4d 48 61 6e | MHandle|r;..MHan| |00001070| 64 6c 65 72 20 3d 0d 09 | 09 52 45 43 4f 52 44 0d |dler =..|.RECORD.| |00001080| 09 09 09 6d 68 49 44 3a | 09 09 09 09 49 4e 54 45 |...mhID:|....INTE| |00001090| 47 45 52 3b 0d 09 09 09 | 6d 68 53 65 6c 65 63 74 |GER;....|mhSelect| |000010a0| 3a 09 09 4d 53 65 6c 65 | 63 74 50 72 6f 63 3b 0d |:..MSele|ctProc;.| |000010b0| 09 09 09 6d 68 43 6c 6f | 62 62 65 72 3a 09 4d 43 |...mhClo|bber:.MC| |000010c0| 6c 6f 62 62 65 72 50 72 | 6f 63 3b 0d 09 09 09 6d |lobberPr|oc;....m| |000010d0| 68 4e 65 78 74 3a 09 09 | 09 4d 48 61 6e 64 6c 65 |hNext:..|.MHandle| |000010e0| 72 48 64 6c 3b 0d 09 09 | 45 4e 44 3b 0d 0d 56 41 |rHdl;...|END;..VA| |000010f0| 52 0d 09 6d 68 4c 69 73 | 74 3a 09 4d 48 61 6e 64 |R..mhLis|t:.MHand| |00001100| 6c 65 72 48 64 6c 3b 0d | 09 6d 68 43 6c 6f 62 4f |lerHdl;.|.mhClobO| |00001110| 6e 52 6d 76 65 3a 20 42 | 4f 4f 4c 45 41 4e 3b 0d |nRmve: B|OOLEAN;.| |00001120| 0d 09 28 2a 0d 09 09 09 | 56 61 72 69 61 62 6c 65 |..(*....|Variable| |00001130| 73 20 66 6f 72 20 74 68 | 65 20 64 65 66 61 75 6c |s for th|e defaul| |00001140| 74 20 41 70 70 6c 65 20 | 6d 65 6e 75 20 68 61 6e |t Apple |menu han| |00001150| 64 6c 65 72 2e 20 20 61 | 70 70 6c 65 49 44 20 69 |dler. a|ppleID i| |00001160| 73 20 73 65 74 20 74 6f | 20 31 0d 09 09 09 69 66 |s set to| 1....if| |00001170| 20 53 6b 65 6c 41 70 70 | 6c 65 20 69 73 20 63 61 | SkelApp|le is ca| |00001180| 6c 6c 65 64 20 61 6e 64 | 20 69 73 20 74 68 65 20 |lled and| is the | |00001190| 69 64 20 6f 66 20 74 68 | 65 20 41 70 70 6c 65 20 |id of th|e Apple | |000011a0| 6d 65 6e 75 2c 20 61 70 | 70 6c 65 41 62 6f 75 74 |menu, ap|pleAbout| |000011b0| 50 72 6f 63 0d 09 09 09 | 69 73 20 74 68 65 20 70 |Proc....|is the p| |000011c0| 72 6f 63 65 64 75 72 65 | 20 74 6f 20 65 78 65 63 |rocedure| to exec| |000011d0| 75 74 65 20 69 66 20 74 | 68 65 72 65 20 69 73 20 |ute if t|here is | |000011e0| 61 6e 20 41 62 6f 75 74 | c9 20 69 74 65 6d 20 61 |an About|. item a| |000011f0| 6e 64 20 69 74 27 73 20 | 63 68 6f 73 65 6e 0d 09 |nd it's |chosen..| |00001200| 09 09 66 72 6f 6d 20 74 | 68 65 20 41 70 70 6c 65 |..from t|he Apple| |00001210| 20 6d 65 6e 75 2e 20 20 | 49 66 20 64 6f 41 62 6f | menu. |If doAbo| |00001220| 75 74 20 69 73 20 74 72 | 75 65 2c 20 74 68 65 6e |ut is tr|ue, then| |00001230| 20 74 68 65 20 6d 65 6e | 75 20 63 6f 6e 74 61 69 | the men|u contai| |00001240| 6e 73 20 74 68 65 0d 09 | 09 09 41 62 6f 75 74 c9 |ns the..|..About.| |00001250| 20 69 74 65 6d 2c 20 6f | 74 68 65 72 77 69 73 65 | item, o|therwise| |00001260| 20 69 74 27 73 20 6a 75 | 73 74 20 44 41 73 2e 0d | it's ju|st DAs..| |00001270| 09 2a 29 0d 0d 09 61 70 | 70 6c 65 4d 65 6e 75 3a |.*)...ap|pleMenu:| |00001280| 09 09 09 4d 65 6e 75 48 | 61 6e 64 6c 65 3b 0d 09 |...MenuH|andle;..| |00001290| 61 70 70 6c 65 49 44 3a | 09 09 09 09 49 4e 54 45 |appleID:|....INTE| |000012a0| 47 45 52 3b 0d 09 61 70 | 70 6c 65 41 62 6f 75 74 |GER;..ap|pleAbout| |000012b0| 50 72 6f 63 3a 09 50 52 | 4f 43 3b 0d 09 64 6f 41 |Proc:.PR|OC;..doA| |000012c0| 62 6f 75 74 3a 09 09 09 | 09 42 4f 4f 4c 45 41 4e |bout:...|.BOOLEAN| |000012d0| 3b 0d 0d 09 28 2a 0d 09 | 09 09 4d 69 73 63 65 6c |;...(*..|..Miscel| |000012e0| 6c 61 6e 65 6f 75 73 20 | 76 61 72 69 61 62 6c 65 |laneous |variable| |000012f0| 73 3a 0d 0d 09 09 09 73 | 63 72 65 65 6e 50 6f 72 |s:.....s|creenPor| |00001300| 74 20 70 6f 69 6e 74 73 | 20 74 6f 20 74 68 65 20 |t points| to the | |00001310| 57 69 6e 64 6f 77 4d 67 | 72 50 6f 72 74 3b 0d 0d |WindowMg|rPort;..| |00001320| 09 09 09 64 6f 6e 65 46 | 6c 61 67 20 64 65 74 65 |...doneF|lag dete| |00001330| 72 6d 69 6e 65 73 20 77 | 68 65 6e 20 53 6b 65 6c |rmines w|hen Skel| |00001340| 4d 61 69 6e 20 72 65 74 | 75 72 6e 73 2e 20 20 49 |Main ret|urns. I| |00001350| 74 20 69 73 20 73 65 74 | 20 62 79 20 63 61 6c 6c |t is set| by call| |00001360| 69 6e 67 20 53 6b 65 6c | 57 68 6f 61 2c 0d 09 09 |ing Skel|Whoa,...| |00001370| 09 77 68 69 63 68 20 74 | 68 65 20 68 6f 73 74 20 |.which t|he host | |00001380| 64 6f 65 73 20 74 6f 20 | 72 65 71 75 65 73 74 20 |does to |request | |00001390| 61 20 68 61 6c 74 2e 0d | 0d 09 09 09 70 42 6b 67 |a halt..|....pBkg| |000013a0| 6e 64 20 70 6f 69 6e 74 | 73 20 74 6f 20 61 20 62 |nd point|s to a b| |000013b0| 61 63 6b 67 72 6f 75 6e | 64 20 70 72 6f 63 65 64 |ackgroun|d proced| |000013c0| 75 72 65 20 74 6f 20 62 | 65 20 72 75 6e 20 64 75 |ure to b|e run du| |000013d0| 72 69 6e 67 20 65 76 65 | 6e 74 20 70 72 6f 63 65 |ring eve|nt proce| |000013e0| 73 73 69 6e 67 2e 0d 09 | 09 09 53 65 74 20 69 74 |ssing...|..Set it| |000013f0| 20 77 69 74 68 20 53 6b | 65 6c 42 61 63 6b 67 72 | with Sk|elBackgr| |00001400| 6f 75 6e 64 2e 20 20 49 | 66 20 4e 49 4c 2c 20 74 |ound. I|f NIL, t| |00001410| 68 65 72 65 27 73 20 6e | 6f 20 70 72 6f 63 65 64 |here's n|o proced| |00001420| 75 72 65 2e 0d 0d 09 09 | 09 64 69 73 6b 49 6e 69 |ure.....|.diskIni| |00001430| 74 50 74 20 69 73 20 74 | 68 65 20 6c 6f 63 61 74 |tPt is t|he locat| |00001440| 69 6f 6e 20 61 74 20 77 | 68 69 63 68 20 74 68 65 |ion at w|hich the| |00001450| 20 64 69 73 6b 20 69 6e | 69 74 69 61 6c 69 7a 61 | disk in|itializa| |00001460| 74 69 6f 6e 20 64 69 61 | 6c 6f 67 0d 09 09 09 61 |tion dia|log....a| |00001470| 70 70 65 61 72 73 20 69 | 66 20 61 6e 20 75 6e 69 |ppears i|f an uni| |00001480| 6e 69 74 69 61 6c 69 7a | 65 64 20 64 69 73 6b 20 |nitializ|ed disk | |00001490| 69 73 20 69 6e 73 65 72 | 74 65 64 2e 0d 09 2a 29 |is inser|ted...*)| |000014a0| 0d 0d 09 73 63 72 65 65 | 6e 50 6f 72 74 3a 09 09 |...scree|nPort:..| |000014b0| 09 47 72 61 66 50 74 72 | 3b 0d 09 64 6f 6e 65 46 |.GrafPtr|;..doneF| |000014c0| 6c 61 67 3a 09 09 09 09 | 42 4f 4f 4c 45 41 4e 3b |lag:....|BOOLEAN;| |000014d0| 0d 09 70 45 76 65 6e 74 | 3a 09 09 09 09 09 45 76 |..pEvent|:.....Ev| |000014e0| 65 6e 74 48 6f 6f 6b 3b | 0d 09 70 42 6b 67 6e 64 |entHook;|..pBkgnd| |000014f0| 3a 09 09 09 09 09 50 52 | 4f 43 3b 0d 09 64 69 73 |:.....PR|OC;..dis| |00001500| 6b 49 6e 69 74 50 74 3a | 09 09 09 50 6f 69 6e 74 |kInitPt:|...Point| |00001510| 3b 0d 09 65 76 65 6e 74 | 4d 61 73 6b 3a 09 09 09 |;..event|Mask:...| |00001520| 42 49 54 53 45 54 3b 0d | 09 64 6c 6f 67 45 76 65 |BITSET;.|.dlogEve| |00001530| 6e 74 4d 61 73 6b 3a 09 | 42 49 54 53 45 54 3b 0d |ntMask:.|BITSET;.| |00001540| 0d 0d 28 2a 20 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |..(* ...|........| |00001550| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00001560| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00001570| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00001580| d1 d1 d1 d1 d1 d1 d1 d1 | d1 20 2a 7c 0d 7c 2a 09 |........|. *|.|*.| |00001590| 09 09 09 09 09 09 49 4e | 54 45 52 4e 41 4c 20 52 |......IN|TERNAL R| |000015a0| 4f 55 54 49 4e 45 53 09 | 09 09 09 09 09 09 09 09 |OUTINES.|........| |000015b0| 09 09 09 09 09 09 09 09 | 09 09 09 2a 7c 0d 7c 2a |........|...*|.|*| |000015c0| 20 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 | .......|........| |000015d0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000015e0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000015f0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00001600| d1 d1 d1 d1 d1 20 2a 29 | 0d 0d 09 28 2a 0d 09 09 |..... *)|...(*...| |00001610| 47 65 74 20 68 61 6e 64 | 6c 65 72 20 61 73 73 6f |Get hand|ler asso| |00001620| 63 69 61 74 65 64 20 77 | 69 74 68 20 75 73 65 72 |ciated w|ith user| |00001630| 20 6f 72 20 64 69 61 6c | 6f 67 20 77 69 6e 64 6f | or dial|og windo| |00001640| 77 2e 0d 09 09 52 65 74 | 75 72 6e 20 6e 69 6c 20 |w....Ret|urn nil | |00001650| 69 66 20 77 69 6e 64 6f | 77 20 64 6f 65 73 6e 27 |if windo|w doesn'| |00001660| 74 20 62 65 6c 6f 6e 67 | 20 74 6f 20 61 6e 79 20 |t belong| to any | |00001670| 6b 6e 6f 77 6e 20 68 61 | 6e 64 6c 65 72 2e 0d 09 |known ha|ndler...| |00001680| 09 54 68 69 73 20 72 6f | 75 74 69 6e 65 20 69 73 |.This ro|utine is| |00001690| 20 61 62 73 6f 6c 75 74 | 65 6c 79 20 66 75 6e 64 | absolut|ely fund| |000016a0| 61 6d 65 6e 74 61 6c 20 | 74 6f 20 54 72 61 6e 73 |amental |to Trans| |000016b0| 53 6b 65 6c 2e 0d 09 2a | 29 0d 09 0d 09 0d 09 50 |Skel...*|)......P| |000016c0| 52 4f 43 45 44 55 52 45 | 20 47 65 74 57 44 48 61 |ROCEDURE| GetWDHa| |000016d0| 6e 64 6c 65 72 28 74 68 | 65 57 69 6e 64 3a 20 57 |ndler(th|eWind: W| |000016e0| 69 6e 64 6f 77 50 74 72 | 29 3a 20 57 48 61 6e 64 |indowPtr|): WHand| |000016f0| 6c 65 72 48 64 6c 3b 0d | 0d 09 09 56 41 52 0d 09 |lerHdl;.|...VAR..| |00001700| 09 20 68 3a 20 57 48 61 | 6e 64 6c 65 72 48 64 6c |. h: WHa|ndlerHdl| |00001710| 3b 0d 09 0d 09 42 45 47 | 49 4e 0d 09 09 68 20 3a |;....BEG|IN...h :| |00001720| 3d 20 77 68 4c 69 73 74 | 3b 0d 09 09 4c 4f 4f 50 |= whList|;...LOOP| |00001730| 0d 09 09 09 49 46 20 68 | 20 3d 20 4e 49 4c 20 54 |....IF h| = NIL T| |00001740| 48 45 4e 20 45 58 49 54 | 3b 20 45 4e 44 3b 0d 09 |HEN EXIT|; END;..| |00001750| 09 09 49 46 20 28 68 5e | 5e 2e 77 68 57 69 6e 64 |..IF (h^|^.whWind| |00001760| 20 3d 20 74 68 65 57 69 | 6e 64 29 20 54 48 45 4e | = theWi|nd) THEN| |00001770| 20 52 45 54 55 52 4e 20 | 28 68 29 3b 20 45 4e 44 | RETURN |(h); END| |00001780| 3b 0d 09 09 09 68 20 3a | 3d 20 68 5e 5e 2e 77 68 |;....h :|= h^^.wh| |00001790| 4e 65 78 74 3b 0d 09 09 | 45 4e 44 3b 0d 09 09 52 |Next;...|END;...R| |000017a0| 45 54 55 52 4e 20 28 4e | 49 4c 29 3b 0d 09 45 4e |ETURN (N|IL);..EN| |000017b0| 44 20 47 65 74 57 44 48 | 61 6e 64 6c 65 72 3b 0d |D GetWDH|andler;.| |000017c0| 0d 0d 09 28 2a 0d 09 09 | 47 65 74 20 68 61 6e 64 |...(*...|Get hand| |000017d0| 6c 65 72 20 61 73 73 6f | 63 69 61 74 65 64 20 77 |ler asso|ciated w| |000017e0| 69 74 68 20 75 73 65 72 | 20 77 69 6e 64 6f 77 2e |ith user| window.| |000017f0| 0d 09 09 52 65 74 75 72 | 6e 20 6e 69 6c 20 69 66 |...Retur|n nil if| |00001800| 20 77 69 6e 64 6f 77 20 | 64 6f 65 73 6e 27 74 20 | window |doesn't | |00001810| 62 65 6c 6f 6e 67 20 74 | 6f 20 61 6e 79 20 6b 6e |belong t|o any kn| |00001820| 6f 77 6e 20 68 61 6e 64 | 6c 65 72 2e 0d 09 09 54 |own hand|ler....T| |00001830| 68 65 20 6f 72 64 65 72 | 20 6f 66 20 74 68 65 20 |he order| of the | |00001840| 74 77 6f 20 74 65 73 74 | 73 20 69 73 20 63 72 69 |two test|s is cri| |00001850| 74 69 63 61 6c 3a 20 20 | 74 68 65 57 69 6e 64 20 |tical: |theWind | |00001860| 6d 69 67 68 74 20 62 65 | 20 6e 69 6c 2e 0d 09 2a |might be| nil...*| |00001870| 29 0d 09 0d 09 50 52 4f | 43 45 44 55 52 45 20 47 |)....PRO|CEDURE G| |00001880| 65 74 57 48 61 6e 64 6c | 65 72 28 74 68 65 57 69 |etWHandl|er(theWi| |00001890| 6e 64 3a 20 57 69 6e 64 | 6f 77 50 74 72 29 3a 20 |nd: Wind|owPtr): | |000018a0| 57 48 61 6e 64 6c 65 72 | 48 64 6c 3b 0d 09 0d 09 |WHandler|Hdl;....| |000018b0| 09 56 41 52 0d 09 09 09 | 68 3a 20 57 48 61 6e 64 |.VAR....|h: WHand| |000018c0| 6c 65 72 48 64 6c 3b 0d | 09 09 09 77 3a 20 57 69 |lerHdl;.|...w: Wi| |000018d0| 6e 64 6f 77 50 65 65 6b | 3b 0d 09 0d 09 42 45 47 |ndowPeek|;....BEG| |000018e0| 49 4e 0d 09 09 68 20 3a | 3d 20 47 65 74 57 44 48 |IN...h :|= GetWDH| |000018f0| 61 6e 64 6c 65 72 20 28 | 74 68 65 57 69 6e 64 29 |andler (|theWind)| |00001900| 3b 0d 09 09 49 46 20 68 | 20 ad 20 4e 49 4c 20 54 |;...IF h| . NIL T| |00001910| 48 45 4e 0d 09 09 09 77 | 20 3a 3d 20 56 41 4c 28 |HEN....w| := VAL(| |00001920| 57 69 6e 64 6f 77 50 65 | 65 6b 2c 20 74 68 65 57 |WindowPe|ek, theW| |00001930| 69 6e 64 29 3b 0d 09 09 | 09 49 46 20 77 5e 2e 77 |ind);...|.IF w^.w| |00001940| 69 6e 64 6f 77 4b 69 6e | 64 20 ad 20 64 69 61 6c |indowKin|d . dial| |00001950| 6f 67 4b 69 6e 64 20 54 | 48 45 4e 20 52 45 54 55 |ogKind T|HEN RETU| |00001960| 52 4e 20 28 68 29 3b 20 | 45 4e 44 3b 0d 09 09 45 |RN (h); |END;...E| |00001970| 4e 44 3b 0d 09 09 52 45 | 54 55 52 4e 20 28 4e 49 |ND;...RE|TURN (NI| |00001980| 4c 29 3b 0d 09 45 4e 44 | 20 47 65 74 57 48 61 6e |L);..END| GetWHan| |00001990| 64 6c 65 72 3b 0d 0d 09 | 28 2a 0d 09 09 47 65 74 |dler;...|(*...Get| |000019a0| 20 68 61 6e 64 6c 65 72 | 20 61 73 73 6f 63 69 61 | handler| associa| |000019b0| 74 65 64 20 77 69 74 68 | 20 64 69 61 6c 6f 67 20 |ted with| dialog | |000019c0| 77 69 6e 64 6f 77 2e 0d | 09 09 52 65 74 75 72 6e |window..|..Return| |000019d0| 20 6e 69 6c 20 69 66 20 | 77 69 6e 64 6f 77 20 64 | nil if |window d| |000019e0| 6f 65 73 6e 27 74 20 62 | 65 6c 6f 6e 67 20 74 6f |oesn't b|elong to| |000019f0| 20 61 6e 79 20 6b 6e 6f | 77 6e 20 68 61 6e 64 6c | any kno|wn handl| |00001a00| 65 72 2e 0d 09 09 54 68 | 65 20 6f 72 64 65 72 20 |er....Th|e order | |00001a10| 6f 66 20 74 68 65 20 74 | 77 6f 20 74 65 73 74 73 |of the t|wo tests| |00001a20| 20 69 73 20 63 72 69 74 | 69 63 61 6c 3a 20 20 74 | is crit|ical: t| |00001a30| 68 65 44 69 61 6c 6f 67 | 20 6d 69 67 68 74 20 62 |heDialog| might b| |00001a40| 65 20 6e 69 6c 2e 0d 09 | 2a 29 0d 09 0d 09 50 52 |e nil...|*)....PR| |00001a50| 4f 43 45 44 55 52 45 20 | 47 65 74 44 48 61 6e 64 |OCEDURE |GetDHand| |00001a60| 6c 65 72 28 74 68 65 44 | 69 61 6c 6f 67 3a 20 44 |ler(theD|ialog: D| |00001a70| 69 61 6c 6f 67 50 74 72 | 29 3a 20 57 48 61 6e 64 |ialogPtr|): WHand| |00001a80| 6c 65 72 48 64 6c 3b 0d | 09 09 56 41 52 0d 09 09 |lerHdl;.|..VAR...| |00001a90| 09 68 3a 20 57 48 61 6e | 64 6c 65 72 48 64 6c 3b |.h: WHan|dlerHdl;| |00001aa0| 0d 09 09 09 77 3a 20 57 | 69 6e 64 6f 77 50 65 65 |....w: W|indowPee| |00001ab0| 6b 3b 0d 09 0d 09 42 45 | 47 49 4e 0d 09 09 68 20 |k;....BE|GIN...h | |00001ac0| 3a 3d 20 47 65 74 57 44 | 48 61 6e 64 6c 65 72 28 |:= GetWD|Handler(| |00001ad0| 74 68 65 44 69 61 6c 6f | 67 29 3b 0d 09 09 49 46 |theDialo|g);...IF| |00001ae0| 20 68 20 ad 20 4e 49 4c | 20 54 48 45 4e 0d 09 09 | h . NIL| THEN...| |00001af0| 09 77 20 3a 3d 20 56 41 | 4c 28 57 69 6e 64 6f 77 |.w := VA|L(Window| |00001b00| 50 65 65 6b 2c 74 68 65 | 44 69 61 6c 6f 67 29 3b |Peek,the|Dialog);| |00001b10| 0d 09 09 09 49 46 20 77 | 5e 2e 77 69 6e 64 6f 77 |....IF w|^.window| |00001b20| 4b 69 6e 64 20 3d 20 64 | 69 61 6c 6f 67 4b 69 6e |Kind = d|ialogKin| |00001b30| 64 20 54 48 45 4e 20 52 | 45 54 55 52 4e 20 28 68 |d THEN R|ETURN (h| |00001b40| 29 3b 20 45 4e 44 3b 0d | 09 09 45 4e 44 3b 0d 09 |); END;.|..END;..| |00001b50| 09 52 45 54 55 52 4e 20 | 28 4e 49 4c 29 3b 0d 09 |.RETURN |(NIL);..| |00001b60| 45 4e 44 20 47 65 74 44 | 48 61 6e 64 6c 65 72 3b |END GetD|Handler;| |00001b70| 0d 0d 09 28 2a 0d 09 09 | 47 65 6e 65 72 61 6c 20 |...(*...|General | |00001b80| 6d 65 6e 75 20 68 61 6e | 64 6c 65 72 2e 20 20 4a |menu han|dler. J| |00001b90| 75 73 74 20 70 61 73 73 | 65 73 20 73 65 6c 65 63 |ust pass|es selec| |00001ba0| 74 69 6f 6e 20 74 6f 20 | 74 68 65 20 68 61 6e 64 |tion to |the hand| |00001bb0| 6c 65 72 27 73 20 73 65 | 6c 65 63 74 0d 09 09 72 |ler's se|lect...r| |00001bc0| 6f 75 74 69 6e 65 2e 20 | 20 49 66 20 74 68 65 20 |outine. | If the | |00001bd0| 73 65 6c 65 63 74 20 72 | 6f 75 74 69 6e 65 20 69 |select r|outine i| |00001be0| 73 20 4e 49 4c 2c 20 73 | 65 6c 65 63 74 69 6e 67 |s NIL, s|electing| |00001bf0| 20 69 74 65 6d 73 20 66 | 72 6f 6d 20 74 68 65 20 | items f|rom the | |00001c00| 6d 65 6e 75 0d 09 09 69 | 73 20 61 20 6e 6f 2d 6f |menu...i|s a no-o| |00001c10| 70 2e 0d 09 2a 29 0d 0d | 09 50 52 4f 43 45 44 55 |p...*)..|.PROCEDU| |00001c20| 52 45 20 44 6f 4d 65 6e | 75 43 6f 6d 6d 61 6e 64 |RE DoMen|uCommand| |00001c30| 28 63 6f 6d 6d 61 6e 64 | 3a 20 4c 4f 4e 47 49 4e |(command|: LONGIN| |00001c40| 54 29 3b 0d 0d 09 09 56 | 41 52 0d 09 09 09 6d 65 |T);....V|AR....me| |00001c50| 6e 75 3a 09 09 49 4e 54 | 45 47 45 52 3b 0d 09 09 |nu:..INT|EGER;...| |00001c60| 09 69 74 65 6d 3a 09 09 | 49 4e 54 45 47 45 52 3b |.item:..|INTEGER;| |00001c70| 0d 09 09 09 6d 68 3a 09 | 09 09 4d 48 61 6e 64 6c |....mh:.|..MHandl| |00001c80| 65 72 48 64 6c 3b 0d 09 | 09 09 70 3a 09 09 09 4d |erHdl;..|..p:...M| |00001c90| 53 65 6c 65 63 74 50 72 | 6f 63 3b 0d 0d 09 42 45 |SelectPr|oc;...BE| |00001ca0| 47 49 4e 0d 09 09 6d 65 | 6e 75 20 3a 3d 20 48 69 |GIN...me|nu := Hi| |00001cb0| 57 6f 72 64 28 63 6f 6d | 6d 61 6e 64 29 3b 0d 09 |Word(com|mand);..| |00001cc0| 09 69 74 65 6d 20 3a 3d | 20 4c 6f 57 6f 72 64 28 |.item :=| LoWord(| |00001cd0| 63 6f 6d 6d 61 6e 64 29 | 3b 0d 09 09 6d 68 20 3a |command)|;...mh :| |00001ce0| 3d 20 6d 68 4c 69 73 74 | 3b 0d 09 09 4c 4f 4f 50 |= mhList|;...LOOP| |00001cf0| 0d 09 09 09 49 46 20 6d | 68 20 3d 20 4e 49 4c 20 |....IF m|h = NIL | |00001d00| 54 48 45 4e 20 45 58 49 | 54 3b 20 45 4e 44 3b 0d |THEN EXI|T; END;.| |00001d10| 09 09 09 49 46 20 28 6d | 65 6e 75 20 3d 20 6d 68 |...IF (m|enu = mh| |00001d20| 5e 5e 2e 6d 68 49 44 29 | 20 26 0d 09 09 09 09 20 |^^.mhID)| &..... | |00001d30| 28 56 41 4c 28 41 44 44 | 52 45 53 53 2c 20 6d 68 |(VAL(ADD|RESS, mh| |00001d40| 5e 5e 2e 6d 68 53 65 6c | 65 63 74 29 20 ad 20 56 |^^.mhSel|ect) . V| |00001d50| 41 4c 28 41 44 44 52 45 | 53 53 2c 20 4e 49 4c 29 |AL(ADDRE|SS, NIL)| |00001d60| 29 20 54 48 45 4e 0d 09 | 09 09 09 70 20 3a 3d 20 |) THEN..|...p := | |00001d70| 6d 68 5e 5e 2e 6d 68 53 | 65 6c 65 63 74 3b 0d 09 |mh^^.mhS|elect;..| |00001d80| 09 09 09 70 28 69 74 65 | 6d 29 3b 0d 09 09 09 09 |...p(ite|m);.....| |00001d90| 45 58 49 54 3b 0d 09 09 | 09 45 4e 44 3b 0d 09 09 |EXIT;...|.END;...| |00001da0| 09 6d 68 20 3a 3d 20 6d | 68 5e 5e 2e 6d 68 4e 65 |.mh := m|h^^.mhNe| |00001db0| 78 74 3b 0d 09 09 45 4e | 44 3b 0d 09 09 48 69 6c |xt;...EN|D;...Hil| |00001dc0| 69 74 65 4d 65 6e 75 28 | 30 29 3b 09 28 2a 20 43 |iteMenu(|0);.(* C| |00001dd0| 6f 6d 6d 61 6e 64 20 64 | 6f 6e 65 2c 20 74 75 72 |ommand d|one, tur| |00001de0| 6e 20 6f 66 66 20 6d 65 | 6e 75 20 68 69 6c 69 74 |n off me|nu hilit| |00001df0| 69 6e 67 20 2a 29 0d 09 | 45 4e 44 20 44 6f 4d 65 |ing *)..|END DoMe| |00001e00| 6e 75 43 6f 6d 6d 61 6e | 64 3b 0d 0d 0d 09 28 2a |nuComman|d;....(*| |00001e10| 0d 09 09 41 70 70 6c 65 | 20 6d 65 6e 75 20 68 61 |...Apple| menu ha| |00001e20| 6e 64 6c 65 72 d1 0d 0d | 09 09 44 6f 41 70 70 6c |ndler...|..DoAppl| |00001e30| 65 49 74 65 6d 3a 20 49 | 66 20 74 68 65 20 66 69 |eItem: I|f the fi| |00001e40| 72 73 74 20 69 74 65 6d | 20 77 61 73 20 63 68 6f |rst item| was cho| |00001e50| 73 65 6e 2c 20 61 6e 64 | 20 74 68 65 72 65 27 73 |sen, and| there's| |00001e60| 20 61 6e 20 22 41 62 6f | 75 74 c9 22 20 69 74 65 | an "Abo|ut." ite| |00001e70| 6d 2c 0d 09 09 63 61 6c | 6c 20 74 68 65 20 70 72 |m,...cal|l the pr| |00001e80| 6f 63 65 64 75 72 65 20 | 61 73 73 6f 63 69 61 74 |ocedure |associat| |00001e90| 65 64 20 77 69 74 68 20 | 69 74 20 28 69 66 20 ad |ed with |it (if .| |00001ea0| 20 4e 49 4c 29 2e 20 20 | 49 66 20 74 68 65 72 65 | NIL). |If there| |00001eb0| 20 69 73 20 6e 6f 20 22 | 41 62 6f 75 74 c9 22 0d | is no "|About.".| |00001ec0| 09 09 69 74 65 6d 20 6f | 72 20 74 68 65 20 69 74 |..item o|r the it| |00001ed0| 65 6d 20 77 61 73 20 6e | 6f 74 20 74 68 65 20 66 |em was n|ot the f| |00001ee0| 69 72 73 74 20 6f 6e 65 | 2c 20 74 68 65 6e 20 6f |irst one|, then o| |00001ef0| 70 65 6e 20 74 68 65 20 | 61 73 73 6f 63 69 61 74 |pen the |associat| |00001f00| 65 64 20 44 41 2e 20 20 | 54 68 65 0d 09 09 70 6f |ed DA. |The...po| |00001f10| 72 74 20 69 73 20 73 61 | 76 65 64 20 61 6e 64 20 |rt is sa|ved and | |00001f20| 72 65 73 74 6f 72 65 64 | 20 62 65 63 61 75 73 65 |restored| because| |00001f30| 20 4f 70 65 6e 44 65 73 | 6b 41 63 63 20 64 6f 65 | OpenDes|kAcc doe| |00001f40| 73 20 6e 6f 74 20 61 6c | 77 61 79 73 20 70 72 65 |s not al|ways pre| |00001f50| 73 65 72 76 65 20 69 74 | 0d 09 09 63 6f 72 72 65 |serve it|...corre| |00001f60| 63 74 6c 79 2e 0d 0d 09 | 09 44 6f 41 70 70 6c 65 |ctly....|.DoApple| |00001f70| 43 6c 6f 62 62 65 72 3a | 09 44 69 73 70 6f 73 65 |Clobber:|.Dispose| |00001f80| 20 6f 66 20 74 68 65 20 | 41 70 70 6c 65 20 6d 65 | of the |Apple me| |00001f90| 6e 75 2e 0d 09 2a 29 0d | 0d 09 50 52 4f 43 45 44 |nu...*).|..PROCED| |00001fa0| 55 52 45 20 44 6f 41 70 | 70 6c 65 49 74 65 6d 28 |URE DoAp|pleItem(| |00001fb0| 69 74 65 6d 3a 20 49 4e | 54 45 47 45 52 29 3b 0d |item: IN|TEGER);.| |00001fc0| 0d 09 09 56 41 52 0d 09 | 09 09 63 75 72 50 6f 72 |...VAR..|..curPor| |00001fd0| 74 3a 09 47 72 61 66 50 | 74 72 3b 0d 09 09 09 73 |t:.GrafP|tr;....s| |00001fe0| 74 72 3a 09 09 09 53 74 | 72 32 35 35 3b 0d 09 09 |tr:...St|r255;...| |00001ff0| 09 64 75 6d 6d 79 3a 09 | 09 49 4e 54 45 47 45 52 |.dummy:.|.INTEGER| |00002000| 3b 0d 0d 09 42 45 47 49 | 4e 0d 09 09 49 46 20 64 |;...BEGI|N...IF d| |00002010| 6f 41 62 6f 75 74 20 26 | 20 28 69 74 65 6d 3d 31 |oAbout &| (item=1| |00002020| 29 20 54 48 45 4e 0d 09 | 09 09 49 46 20 56 41 4c |) THEN..|..IF VAL| |00002030| 28 41 44 44 52 45 53 53 | 2c 20 61 70 70 6c 65 41 |(ADDRESS|, appleA| |00002040| 62 6f 75 74 50 72 6f 63 | 29 20 23 20 56 41 4c 28 |boutProc|) # VAL(| |00002050| 41 44 44 52 45 53 53 2c | 20 4e 49 4c 29 20 54 48 |ADDRESS,| NIL) TH| |00002060| 45 4e 0d 09 09 09 09 61 | 70 70 6c 65 41 62 6f 75 |EN.....a|ppleAbou| |00002070| 74 50 72 6f 63 3b 0d 09 | 09 09 45 4e 44 3b 0d 09 |tProc;..|..END;..| |00002080| 09 45 4c 53 45 0d 09 09 | 09 47 65 74 50 6f 72 74 |.ELSE...|.GetPort| |00002090| 28 63 75 72 50 6f 72 74 | 29 3b 0d 09 09 09 47 65 |(curPort|);....Ge| |000020a0| 74 49 74 65 6d 28 61 70 | 70 6c 65 4d 65 6e 75 2c |tItem(ap|pleMenu,| |000020b0| 20 69 74 65 6d 2c 20 73 | 74 72 29 3b 0d 09 09 09 | item, s|tr);....| |000020c0| 64 75 6d 6d 79 20 3a 3d | 20 4f 70 65 6e 44 65 73 |dummy :=| OpenDes| |000020d0| 6b 41 63 63 28 73 74 72 | 29 3b 0d 09 09 09 53 65 |kAcc(str|);....Se| |000020e0| 74 50 6f 72 74 28 63 75 | 72 50 6f 72 74 29 3b 0d |tPort(cu|rPort);.| |000020f0| 09 09 45 4e 44 3b 0d 09 | 45 4e 44 20 44 6f 41 70 |..END;..|END DoAp| |00002100| 70 6c 65 49 74 65 6d 3b | 0d 0d 0d 09 50 52 4f 43 |pleItem;|....PROC| |00002110| 45 44 55 52 45 20 44 6f | 41 70 70 6c 65 43 6c 6f |EDURE Do|AppleClo| |00002120| 62 62 65 72 28 61 70 70 | 6c 65 4d 65 6e 75 3a 20 |bber(app|leMenu: | |00002130| 4d 65 6e 75 48 61 6e 64 | 6c 65 29 3b 0d 0d 09 42 |MenuHand|le);...B| |00002140| 45 47 49 4e 0d 09 09 44 | 69 73 70 6f 73 65 4d 65 |EGIN...D|isposeMe| |00002150| 6e 75 28 61 70 70 6c 65 | 4d 65 6e 75 29 3b 0d 09 |nu(apple|Menu);..| |00002160| 45 4e 44 20 44 6f 41 70 | 70 6c 65 43 6c 6f 62 62 |END DoAp|pleClobb| |00002170| 65 72 3b 0d 0d 0d 09 28 | 2a d1 d1 d1 d1 d1 d1 d1 |er;....(|*.......| |00002180| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00002190| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000021a0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000021b0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000021c0| 0d 09 09 57 69 6e 64 6f | 77 20 48 61 6e 64 6c 65 |...Windo|w Handle| |000021d0| 72 20 52 6f 75 74 69 6e | 67 20 52 6f 75 74 69 6e |r Routin|g Routin| |000021e0| 65 73 0d 0d 09 09 45 61 | 63 68 20 72 6f 75 74 69 |es....Ea|ch routi| |000021f0| 6e 65 20 73 65 74 73 20 | 74 68 65 20 70 6f 72 74 |ne sets |the port| |00002200| 20 74 6f 20 74 68 65 20 | 68 61 6e 64 6c 65 72 27 | to the |handler'| |00002210| 73 20 77 69 6e 64 6f 77 | 20 62 65 66 6f 72 65 20 |s window| before | |00002220| 65 78 65 63 75 74 69 6e | 67 20 74 68 65 0d 09 09 |executin|g the...| |00002230| 68 61 6e 64 6c 65 72 20 | 70 72 6f 63 65 64 75 72 |handler |procedur| |00002240| 65 2e 0d 09 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |e.......|........| |00002250| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00002260| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00002270| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00002280| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 2a 29 0d 0d 09 |........|...*)...| |00002290| 28 2a 0d 09 09 50 61 73 | 73 20 6c 6f 63 61 6c 20 |(*...Pas|s local | |000022a0| 6d 6f 75 73 65 20 63 6f | 6f 72 64 69 6e 61 74 65 |mouse co|ordinate| |000022b0| 73 2c 20 63 6c 69 63 6b | 20 74 69 6d 65 2c 20 26 |s, click| time, &| |000022c0| 20 74 68 65 20 6d 6f 64 | 69 66 69 65 72 73 20 77 | the mod|ifiers w| |000022d0| 6f 72 64 20 74 6f 20 74 | 68 65 20 68 61 6e 64 6c |ord to t|he handl| |000022e0| 65 72 2e 0d 09 2a 29 0d | 0d 09 50 52 4f 43 45 44 |er...*).|..PROCED| |000022f0| 55 52 45 20 44 6f 4d 6f | 75 73 65 28 68 3a 20 57 |URE DoMo|use(h: W| |00002300| 48 61 6e 64 6c 65 72 48 | 64 6c 3b 20 56 41 52 20 |HandlerH|dl; VAR | |00002310| 74 68 65 45 76 65 6e 74 | 3a 20 45 76 65 6e 74 52 |theEvent|: EventR| |00002320| 65 63 6f 72 64 29 3b 0d | 0d 09 09 56 41 52 0d 09 |ecord);.|...VAR..| |00002330| 09 09 70 3a 09 09 09 57 | 4d 6f 75 73 65 50 72 6f |..p:...W|MousePro| |00002340| 63 3b 0d 09 09 09 74 68 | 65 50 74 3a 09 50 6f 69 |c;....th|ePt:.Poi| |00002350| 6e 74 3b 0d 0d 09 42 45 | 47 49 4e 0d 09 09 49 46 |nt;...BE|GIN...IF| |00002360| 20 68 20 ad 20 4e 49 4c | 20 54 48 45 4e 0d 09 09 | h . NIL| THEN...| |00002370| 09 53 65 74 50 6f 72 74 | 28 68 5e 5e 2e 77 68 57 |.SetPort|(h^^.whW| |00002380| 69 6e 64 29 3b 0d 09 09 | 09 70 20 3a 3d 20 68 5e |ind);...|.p := h^| |00002390| 5e 2e 77 68 4d 6f 75 73 | 65 3b 0d 09 09 09 49 46 |^.whMous|e;....IF| |000023a0| 20 56 41 4c 28 41 44 44 | 52 45 53 53 2c 20 70 29 | VAL(ADD|RESS, p)| |000023b0| 20 23 20 56 41 4c 28 41 | 44 44 52 45 53 53 2c 20 | # VAL(A|DDRESS, | |000023c0| 4e 49 4c 29 20 54 48 45 | 4e 0d 09 09 09 09 74 68 |NIL) THE|N.....th| |000023d0| 65 50 74 20 3a 3d 20 74 | 68 65 45 76 65 6e 74 2e |ePt := t|heEvent.| |000023e0| 77 68 65 72 65 3b 0d 09 | 09 09 09 47 6c 6f 62 61 |where;..|...Globa| |000023f0| 6c 54 6f 4c 6f 63 61 6c | 28 74 68 65 50 74 29 3b |lToLocal|(thePt);| |00002400| 0d 09 09 09 09 70 28 74 | 68 65 50 74 2c 20 74 68 |.....p(t|hePt, th| |00002410| 65 45 76 65 6e 74 2e 77 | 68 65 6e 2c 20 56 41 4c |eEvent.w|hen, VAL| |00002420| 28 42 49 54 53 45 54 2c | 20 74 68 65 45 76 65 6e |(BITSET,| theEven| |00002430| 74 2e 6d 6f 64 69 66 69 | 65 72 73 29 29 3b 0d 09 |t.modifi|ers));..| |00002440| 09 09 45 4e 44 3b 0d 09 | 09 45 4e 44 3b 0d 09 45 |..END;..|.END;..E| |00002450| 4e 44 20 44 6f 4d 6f 75 | 73 65 3b 0d 0d 0d 09 50 |ND DoMou|se;....P| |00002460| 52 4f 43 45 44 55 52 45 | 20 44 6f 4b 65 79 28 68 |ROCEDURE| DoKey(h| |00002470| 3a 20 57 48 61 6e 64 6c | 65 72 48 64 6c 3b 20 63 |: WHandl|erHdl; c| |00002480| 68 3a 20 43 48 41 52 3b | 20 6d 6f 64 73 3a 20 42 |h: CHAR;| mods: B| |00002490| 49 54 53 45 54 29 3b 0d | 0d 09 09 56 41 52 0d 09 |ITSET);.|...VAR..| |000024a0| 09 09 70 3a 09 57 4b 65 | 79 50 72 6f 63 3b 0d 0d |..p:.WKe|yProc;..| |000024b0| 09 42 45 47 49 4e 0d 09 | 09 49 46 20 68 20 ad 20 |.BEGIN..|.IF h . | |000024c0| 4e 49 4c 20 54 48 45 4e | 0d 09 09 09 53 65 74 50 |NIL THEN|....SetP| |000024d0| 6f 72 74 28 68 5e 5e 2e | 77 68 57 69 6e 64 29 3b |ort(h^^.|whWind);| |000024e0| 0d 09 09 09 70 20 3a 3d | 20 68 5e 5e 2e 77 68 4b |....p :=| h^^.whK| |000024f0| 65 79 3b 0d 09 09 09 49 | 46 20 56 41 4c 28 41 44 |ey;....I|F VAL(AD| |00002500| 44 52 45 53 53 2c 20 70 | 29 20 ad 20 56 41 4c 28 |DRESS, p|) . VAL(| |00002510| 41 44 44 52 45 53 53 2c | 20 4e 49 4c 29 20 54 48 |ADDRESS,| NIL) TH| |00002520| 45 4e 0d 09 09 09 09 70 | 28 63 68 2c 20 6d 6f 64 |EN.....p|(ch, mod| |00002530| 73 29 3b 0d 09 09 09 45 | 4e 44 3b 0d 09 09 45 4e |s);....E|ND;...EN| |00002540| 44 3b 0d 09 45 4e 44 20 | 44 6f 4b 65 79 3b 0d 0d |D;..END |DoKey;..| |00002550| 0d 09 28 2a 0d 09 09 43 | 61 6c 6c 20 74 68 65 20 |..(*...C|all the | |00002560| 77 69 6e 64 6f 77 20 75 | 70 64 61 74 69 6e 67 20 |window u|pdating | |00002570| 70 72 6f 63 65 64 75 72 | 65 2c 20 70 61 73 73 69 |procedur|e, passi| |00002580| 6e 67 20 74 6f 20 69 74 | 20 61 6e 20 69 6e 64 69 |ng to it| an indi| |00002590| 63 61 74 6f 72 20 77 68 | 65 74 68 65 72 0d 09 09 |cator wh|ether...| |000025a0| 74 68 65 20 77 69 6e 64 | 6f 77 20 68 61 73 20 62 |the wind|ow has b| |000025b0| 65 65 6e 20 72 65 73 69 | 7a 65 64 20 6f 72 20 6e |een resi|zed or n| |000025c0| 6f 74 2e 20 20 54 68 65 | 6e 20 63 6c 65 61 72 20 |ot. The|n clear | |000025d0| 74 68 65 20 66 6c 61 67 | 2c 20 61 73 73 75 6d 69 |the flag|, assumi| |000025e0| 6e 67 20 74 68 65 0d 09 | 09 75 70 64 61 74 65 20 |ng the..|.update | |000025f0| 70 72 6f 63 20 74 6f 6f | 6b 20 77 68 61 74 65 76 |proc too|k whatev| |00002600| 65 72 20 61 63 74 69 6f | 6e 20 77 61 73 20 6e 65 |er actio|n was ne| |00002610| 63 65 73 73 61 72 79 20 | 74 6f 20 72 65 73 70 6f |cessary |to respo| |00002620| 6e 64 20 74 6f 20 72 65 | 73 69 7a 69 6e 67 2e 0d |nd to re|sizing..| |00002630| 0d 09 09 49 66 20 74 68 | 65 20 68 61 6e 64 6c 65 |...If th|e handle| |00002640| 72 20 64 6f 65 73 6e 27 | 74 20 68 61 76 65 20 61 |r doesn'|t have a| |00002650| 6e 79 20 75 70 64 61 74 | 65 20 70 72 6f 63 2c 20 |ny updat|e proc, | |00002660| 74 68 65 20 42 65 67 69 | 6e 2f 45 6e 64 55 70 64 |the Begi|n/EndUpd| |00002670| 61 74 65 20 73 74 75 66 | 66 0d 09 09 69 73 20 73 |ate stuf|f...is s| |00002680| 74 69 6c 6c 20 64 6f 6e | 65 2c 20 74 6f 20 63 6c |till don|e, to cl| |00002690| 65 61 72 20 74 68 65 20 | 75 70 64 61 74 65 20 72 |ear the |update r| |000026a0| 65 67 69 6f 6e 2e 20 20 | 4f 74 68 65 72 77 69 73 |egion. |Otherwis| |000026b0| 65 20 74 68 65 20 57 69 | 6e 64 6f 77 20 4d 67 72 |e the Wi|ndow Mgr| |000026c0| 0d 09 09 77 69 6c 6c 20 | 6b 65 65 70 20 67 65 6e |...will |keep gen| |000026d0| 65 72 61 74 69 6e 67 20 | 75 70 64 61 74 65 20 65 |erating |update e| |000026e0| 76 65 6e 74 73 20 66 6f | 72 20 74 68 65 20 77 69 |vents fo|r the wi| |000026f0| 6e 64 6f 77 2e 2c 20 73 | 74 61 6c 6c 69 6e 67 20 |ndow., s|talling | |00002700| 75 70 64 61 74 65 73 20 | 6f 66 0d 09 09 6f 74 68 |updates |of...oth| |00002710| 65 72 20 77 69 6e 64 6f | 77 73 2e 0d 0d 09 09 4d |er windo|ws.....M| |00002720| 61 6b 65 20 73 75 72 65 | 20 74 6f 20 73 61 76 65 |ake sure| to save| |00002730| 20 61 6e 64 20 72 65 73 | 74 6f 72 65 20 74 68 65 | and res|tore the| |00002740| 20 70 6f 72 74 2c 20 61 | 73 20 69 74 27 73 20 6e | port, a|s it's n| |00002750| 6f 74 20 61 6c 77 61 79 | 73 20 74 68 65 20 61 63 |ot alway|s the ac| |00002760| 74 69 76 65 0d 09 09 77 | 69 6e 64 6f 77 20 74 68 |tive...w|indow th| |00002770| 61 74 20 69 73 20 75 70 | 64 61 74 65 64 2e 0d 09 |at is up|dated...| |00002780| 2a 29 0d 0d 09 50 52 4f | 43 45 44 55 52 45 20 44 |*)...PRO|CEDURE D| |00002790| 6f 55 70 64 61 74 65 28 | 68 3a 20 57 48 61 6e 64 |oUpdate(|h: WHand| |000027a0| 6c 65 72 48 64 6c 29 3b | 0d 0d 09 09 56 41 52 0d |lerHdl);|....VAR.| |000027b0| 09 09 09 70 3a 20 57 55 | 70 64 61 74 65 50 72 6f |...p: WU|pdatePro| |000027c0| 63 3b 0d 09 09 09 74 6d | 70 50 6f 72 74 2c 20 75 |c;....tm|pPort, u| |000027d0| 70 64 50 6f 72 74 3a 20 | 47 72 61 66 50 74 72 3b |pdPort: |GrafPtr;| |000027e0| 0d 09 09 09 72 68 3a 20 | 57 48 61 6e 64 6c 65 72 |....rh: |WHandler| |000027f0| 48 64 6c 3b 0d 0d 09 42 | 45 47 49 4e 0d 09 09 72 |Hdl;...B|EGIN...r| |00002800| 68 20 3a 3d 20 68 3b 0d | 09 09 49 46 20 72 68 20 |h := h;.|..IF rh | |00002810| ad 20 4e 49 4c 20 54 48 | 45 4e 0d 09 09 09 47 65 |. NIL TH|EN....Ge| |00002820| 74 50 6f 72 74 28 74 6d | 70 50 6f 72 74 29 3b 0d |tPort(tm|pPort);.| |00002830| 09 09 09 75 70 64 50 6f | 72 74 20 3a 3d 20 72 68 |...updPo|rt := rh| |00002840| 5e 5e 2e 77 68 57 69 6e | 64 3b 0d 09 09 09 53 65 |^^.whWin|d;....Se| |00002850| 74 50 6f 72 74 28 75 70 | 64 50 6f 72 74 29 3b 0d |tPort(up|dPort);.| |00002860| 09 09 09 42 65 67 69 6e | 55 70 64 61 74 65 28 75 |...Begin|Update(u| |00002870| 70 64 50 6f 72 74 29 3b | 0d 09 09 09 70 20 3a 3d |pdPort);|....p :=| |00002880| 20 72 68 5e 5e 2e 77 68 | 55 70 64 61 74 65 3b 0d | rh^^.wh|Update;.| |00002890| 09 09 09 49 46 20 56 41 | 4c 28 41 44 44 52 45 53 |...IF VA|L(ADDRES| |000028a0| 53 2c 20 70 29 20 23 20 | 56 41 4c 28 41 44 44 52 |S, p) # |VAL(ADDR| |000028b0| 45 53 53 2c 20 4e 49 4c | 29 20 54 48 45 4e 0d 09 |ESS, NIL|) THEN..| |000028c0| 09 09 09 70 28 72 68 5e | 5e 2e 77 68 53 69 7a 65 |...p(rh^|^.whSize| |000028d0| 64 29 3b 0d 09 09 09 09 | 72 68 5e 5e 2e 77 68 53 |d);.....|rh^^.whS| |000028e0| 69 7a 65 64 20 3a 3d 20 | 46 41 4c 53 45 3b 0d 09 |ized := |FALSE;..| |000028f0| 09 09 45 4e 44 3b 0d 09 | 09 09 45 6e 64 55 70 64 |..END;..|..EndUpd| |00002900| 61 74 65 28 75 70 64 50 | 6f 72 74 29 3b 0d 09 09 |ate(updP|ort);...| |00002910| 09 53 65 74 50 6f 72 74 | 28 74 6d 70 50 6f 72 74 |.SetPort|(tmpPort| |00002920| 29 3b 0d 09 09 45 4e 44 | 3b 0d 09 45 4e 44 20 44 |);...END|;..END D| |00002930| 6f 55 70 64 61 74 65 3b | 0d 0d 0d 09 28 2a 0d 09 |oUpdate;|....(*..| |00002940| 09 50 61 73 73 20 61 63 | 74 69 76 61 74 65 2f 64 |.Pass ac|tivate/d| |00002950| 65 61 63 74 69 76 61 74 | 65 20 6e 6f 74 69 66 69 |eactivat|e notifi| |00002960| 63 61 74 69 6f 6e 20 74 | 6f 20 68 61 6e 64 6c 65 |cation t|o handle| |00002970| 72 2e 0d 09 2a 29 0d 0d | 09 50 52 4f 43 45 44 55 |r...*)..|.PROCEDU| |00002980| 52 45 20 44 6f 41 63 74 | 69 76 61 74 65 28 68 3a |RE DoAct|ivate(h:| |00002990| 20 57 48 61 6e 64 6c 65 | 72 48 64 6c 3b 20 61 63 | WHandle|rHdl; ac| |000029a0| 74 69 76 65 3a 20 42 4f | 4f 4c 45 41 4e 29 3b 0d |tive: BO|OLEAN);.| |000029b0| 0d 09 09 56 41 52 0d 09 | 09 09 70 3a 09 57 41 63 |...VAR..|..p:.WAc| |000029c0| 74 69 76 61 74 65 50 72 | 6f 63 3b 0d 0d 09 42 45 |tivatePr|oc;...BE| |000029d0| 47 49 4e 0d 09 09 49 46 | 20 68 20 ad 20 4e 49 4c |GIN...IF| h . NIL| |000029e0| 20 54 48 45 4e 0d 09 09 | 09 70 20 3a 3d 20 68 5e | THEN...|.p := h^| |000029f0| 5e 2e 77 68 41 63 74 69 | 76 61 74 65 3b 0d 09 09 |^.whActi|vate;...| |00002a00| 09 49 46 20 56 41 4c 28 | 41 44 44 52 45 53 53 2c |.IF VAL(|ADDRESS,| |00002a10| 20 70 29 20 ad 20 56 41 | 4c 28 41 44 44 52 45 53 | p) . VA|L(ADDRES| |00002a20| 53 2c 20 4e 49 4c 29 20 | 54 48 45 4e 0d 09 09 09 |S, NIL) |THEN....| |00002a30| 09 53 65 74 50 6f 72 74 | 28 68 5e 5e 2e 77 68 57 |.SetPort|(h^^.whW| |00002a40| 69 6e 64 29 3b 0d 09 09 | 09 09 70 28 61 63 74 69 |ind);...|..p(acti| |00002a50| 76 65 29 3b 0d 09 09 09 | 45 4e 44 3b 0d 09 09 45 |ve);....|END;...E| |00002a60| 4e 44 3b 0d 09 45 4e 44 | 20 44 6f 41 63 74 69 76 |ND;..END| DoActiv| |00002a70| 61 74 65 3b 0d 0d 0d 09 | 28 2a 0d 09 09 45 78 65 |ate;....|(*...Exe| |00002a80| 63 75 74 65 20 61 20 77 | 69 6e 64 6f 77 20 68 61 |cute a w|indow ha| |00002a90| 6e 64 6c 65 72 27 73 20 | 63 6c 6f 73 65 20 70 72 |ndler's |close pr| |00002aa0| 6f 63 2e 20 20 54 68 69 | 73 20 6d 61 79 20 62 65 |oc. Thi|s may be| |00002ab0| 20 75 73 65 64 20 62 79 | 20 68 61 6e 64 6c 65 72 | used by| handler| |00002ac0| 73 20 66 6f 72 0d 09 09 | 74 65 6d 70 20 77 69 6e |s for...|temp win| |00002ad0| 64 6f 77 73 20 74 68 61 | 74 20 77 61 6e 74 20 74 |dows tha|t want t| |00002ae0| 6f 20 72 65 6d 6f 76 65 | 20 74 68 65 6d 73 65 6c |o remove| themsel| |00002af0| 76 65 73 20 77 68 65 6e | 20 74 68 65 20 77 69 6e |ves when| the win| |00002b00| 64 6f 77 20 69 73 20 63 | 6c 6f 73 65 64 3a 0d 09 |dow is c|losed:..| |00002b10| 09 74 68 65 79 20 63 61 | 6e 20 63 61 6c 6c 20 53 |.they ca|n call S| |00002b20| 6b 65 6c 52 6d 76 65 57 | 69 6e 64 20 74 6f 20 64 |kelRmveW|ind to d| |00002b30| 69 73 70 6f 73 65 20 6f | 66 20 74 68 65 20 77 69 |ispose o|f the wi| |00002b40| 6e 64 6f 77 20 61 6e 64 | 20 72 65 6d 6f 76 65 20 |ndow and| remove | |00002b50| 74 68 65 20 68 61 6e 64 | 6c 65 72 0d 09 09 66 72 |the hand|ler...fr| |00002b60| 6f 6d 20 74 68 65 20 77 | 69 6e 64 6f 77 20 68 61 |om the w|indow ha| |00002b70| 6e 64 6c 65 72 20 6c 69 | 73 74 2e 20 20 54 68 75 |ndler li|st. Thu| |00002b80| 73 2c 20 77 69 6e 64 6f | 77 73 20 6d 61 79 20 62 |s, windo|ws may b| |00002b90| 65 20 64 79 6e 61 6d 69 | 63 61 6c 6c 79 20 63 72 |e dynami|cally cr| |00002ba0| 65 61 74 65 64 20 61 6e | 64 0d 09 09 64 65 73 74 |eated an|d...dest| |00002bb0| 72 6f 79 65 64 20 77 69 | 74 68 6f 75 74 20 66 69 |royed wi|thout fi| |00002bc0| 6c 6c 69 6e 67 20 75 70 | 20 74 68 65 20 68 61 6e |lling up| the han| |00002bd0| 64 6c 65 72 20 6c 69 73 | 74 20 77 69 74 68 20 61 |dler lis|t with a| |00002be0| 20 62 75 6e 63 68 20 6f | 66 20 69 6e 76 61 6c 69 | bunch o|f invali| |00002bf0| 64 20 68 61 6e 64 6c 65 | 72 73 0d 0d 09 09 49 66 |d handle|rs....If| |00002c00| 20 74 68 65 20 68 61 6e | 64 6c 65 72 20 64 6f 65 | the han|dler doe| |00002c10| 73 6e 27 74 20 68 61 76 | 65 20 61 20 63 6c 6f 73 |sn't hav|e a clos| |00002c20| 65 20 70 72 6f 63 2c 20 | 6a 75 73 74 20 68 69 64 |e proc, |just hid| |00002c30| 65 20 74 68 65 20 77 69 | 6e 64 6f 77 2e 20 20 54 |e the wi|ndow. T| |00002c40| 68 65 20 68 6f 73 74 0d | 09 09 73 68 6f 75 6c 64 |he host.|..should| |00002c50| 20 70 72 6f 76 69 64 65 | 20 73 6f 6d 65 20 77 61 | provide| some wa| |00002c60| 79 20 6f 66 20 72 65 6f | 70 65 6e 69 6e 67 20 74 |y of reo|pening t| |00002c70| 68 65 20 77 69 6e 64 6f | 77 20 28 70 65 72 68 61 |he windo|w (perha| |00002c80| 70 73 20 61 20 6d 65 6e | 75 20 73 65 6c 65 63 74 |ps a men|u select| |00002c90| 69 6f 6e 29 2e 0d 09 09 | 4f 74 68 65 72 77 69 73 |ion)....|Otherwis| |00002ca0| 65 2c 20 74 68 65 20 77 | 69 6e 64 6f 77 20 77 69 |e, the w|indow wi| |00002cb0| 6c 6c 20 62 65 20 6c 6f | 73 74 20 66 72 6f 6d 20 |ll be lo|st from | |00002cc0| 75 73 65 72 20 63 6f 6e | 74 72 6f 6c 20 69 66 20 |user con|trol if | |00002cd0| 69 74 20 69 73 20 68 69 | 64 64 65 6e 2c 20 73 69 |it is hi|dden, si| |00002ce0| 6e 63 65 0d 09 09 69 74 | 20 77 6f 6e 27 74 20 72 |nce...it| won't r| |00002cf0| 65 63 65 69 76 65 20 75 | 73 65 72 20 65 76 65 6e |eceive u|ser even| |00002d00| 74 73 2e 0d 0d 09 09 54 | 68 65 20 70 6f 72 74 20 |ts.....T|he port | |00002d10| 69 73 20 73 65 74 20 74 | 6f 20 74 68 65 20 77 69 |is set t|o the wi| |00002d20| 6e 64 6f 77 20 6d 61 6e | 61 67 65 72 20 70 6f 72 |ndow man|ager por| |00002d30| 74 20 61 66 74 65 72 20 | 63 61 6c 6c 69 6e 67 20 |t after |calling | |00002d40| 74 68 65 20 68 61 6e 64 | 6c 65 72 20 70 72 6f 63 |the hand|ler proc| |00002d50| 0d 09 09 74 6f 20 61 76 | 6f 69 64 20 61 20 64 61 |...to av|oid a da| |00002d60| 6e 67 6c 69 6e 67 20 70 | 6f 72 74 2e 0d 09 2a 29 |ngling p|ort...*)| |00002d70| 0d 0d 09 50 52 4f 43 45 | 44 55 52 45 20 44 6f 43 |...PROCE|DURE DoC| |00002d80| 6c 6f 73 65 28 68 3a 20 | 57 48 61 6e 64 6c 65 72 |lose(h: |WHandler| |00002d90| 48 64 6c 29 3b 0d 0d 09 | 09 56 41 52 0d 09 09 09 |Hdl);...|.VAR....| |00002da0| 70 3a 09 57 43 6c 6f 73 | 65 50 72 6f 63 3b 0d 09 |p:.WClos|eProc;..| |00002db0| 09 09 72 68 3a 20 57 48 | 61 6e 64 6c 65 72 48 64 |..rh: WH|andlerHd| |00002dc0| 6c 3b 0d 0d 09 42 45 47 | 49 4e 0d 09 09 72 68 20 |l;...BEG|IN...rh | |00002dd0| 3a 3d 20 68 3b 0d 09 09 | 49 46 20 72 68 20 ad 20 |:= h;...|IF rh . | |00002de0| 4e 49 4c 20 54 48 45 4e | 0d 09 09 09 53 65 74 50 |NIL THEN|....SetP| |00002df0| 6f 72 74 28 72 68 5e 5e | 2e 77 68 57 69 6e 64 29 |ort(rh^^|.whWind)| |00002e00| 3b 0d 09 09 09 70 20 3a | 3d 20 72 68 5e 5e 2e 77 |;....p :|= rh^^.w| |00002e10| 68 43 6c 6f 73 65 3b 0d | 09 09 09 49 46 20 56 41 |hClose;.|...IF VA| |00002e20| 4c 28 41 44 44 52 45 53 | 53 2c 20 70 29 20 ad 20 |L(ADDRES|S, p) . | |00002e30| 56 41 4c 28 41 44 44 52 | 45 53 53 2c 20 4e 49 4c |VAL(ADDR|ESS, NIL| |00002e40| 29 20 54 48 45 4e 20 70 | 3b 0d 09 09 09 45 4c 53 |) THEN p|;....ELS| |00002e50| 45 20 48 69 64 65 57 69 | 6e 64 6f 77 28 68 5e 5e |E HideWi|ndow(h^^| |00002e60| 2e 77 68 57 69 6e 64 29 | 3b 20 45 4e 44 3b 0d 09 |.whWind)|; END;..| |00002e70| 09 09 53 65 74 50 6f 72 | 74 28 73 63 72 65 65 6e |..SetPor|t(screen| |00002e80| 50 6f 72 74 29 3b 0d 09 | 09 45 4e 44 3b 0d 09 45 |Port);..|.END;..E| |00002e90| 4e 44 20 44 6f 43 6c 6f | 73 65 3b 0d 0d 0d 09 28 |ND DoClo|se;....(| |00002ea0| 2a 0d 09 09 45 78 65 63 | 75 74 65 20 61 20 77 69 |*...Exec|ute a wi| |00002eb0| 6e 64 6f 77 20 68 61 6e | 64 6c 65 72 27 73 20 63 |ndow han|dler's c| |00002ec0| 6c 6f 62 62 65 72 20 70 | 72 6f 63 2e 0d 0d 09 09 |lobber p|roc.....| |00002ed0| 54 68 65 20 70 6f 72 74 | 20 69 73 20 73 65 74 20 |The port| is set | |00002ee0| 74 6f 20 74 68 65 20 77 | 69 6e 64 6f 77 20 6d 61 |to the w|indow ma| |00002ef0| 6e 61 67 65 72 20 70 6f | 72 74 20 61 66 74 65 72 |nager po|rt after| |00002f00| 20 63 61 6c 6c 69 6e 67 | 20 74 68 65 20 68 61 6e | calling| the han| |00002f10| 64 6c 65 72 20 70 72 6f | 63 0d 09 09 74 6f 20 61 |dler pro|c...to a| |00002f20| 76 6f 69 64 20 61 20 64 | 61 6e 67 6c 69 6e 67 20 |void a d|angling | |00002f30| 70 6f 72 74 2e 0d 09 2a | 29 0d 0d 09 50 52 4f 43 |port...*|)...PROC| |00002f40| 45 44 55 52 45 20 44 6f | 43 6c 6f 62 62 65 72 28 |EDURE Do|Clobber(| |00002f50| 68 3a 20 57 48 61 6e 64 | 6c 65 72 48 64 6c 29 3b |h: WHand|lerHdl);| |00002f60| 0d 0d 09 09 56 41 52 0d | 09 09 09 70 3a 20 57 43 |....VAR.|...p: WC| |00002f70| 6c 6f 62 62 65 72 50 72 | 6f 63 3b 0d 0d 09 42 45 |lobberPr|oc;...BE| |00002f80| 47 49 4e 0d 09 09 49 46 | 20 68 20 ad 20 4e 49 4c |GIN...IF| h . NIL| |00002f90| 20 54 48 45 4e 0d 09 09 | 09 53 65 74 50 6f 72 74 | THEN...|.SetPort| |00002fa0| 28 68 5e 5e 2e 77 68 57 | 69 6e 64 29 3b 0d 09 09 |(h^^.whW|ind);...| |00002fb0| 09 70 20 3a 3d 20 68 5e | 5e 2e 77 68 43 6c 6f 62 |.p := h^|^.whClob| |00002fc0| 62 65 72 3b 0d 09 09 09 | 49 46 20 56 41 4c 28 41 |ber;....|IF VAL(A| |00002fd0| 44 44 52 45 53 53 2c 20 | 70 29 20 ad 20 56 41 4c |DDRESS, |p) . VAL| |00002fe0| 28 41 44 44 52 45 53 53 | 2c 20 4e 49 4c 29 20 54 |(ADDRESS|, NIL) T| |00002ff0| 48 45 4e 20 70 3b 20 45 | 4e 44 3b 0d 09 09 09 53 |HEN p; E|ND;....S| |00003000| 65 74 50 6f 72 74 28 73 | 63 72 65 65 6e 50 6f 72 |etPort(s|creenPor| |00003010| 74 29 3b 0d 09 09 45 4e | 44 3b 0d 09 45 4e 44 20 |t);...EN|D;..END | |00003020| 44 6f 43 6c 6f 62 62 65 | 72 3b 0d 0d 0d 09 28 2a |DoClobbe|r;....(*| |00003030| 0d 09 09 45 78 65 63 75 | 74 65 20 68 61 6e 64 6c |...Execu|te handl| |00003040| 65 72 27 73 20 69 64 6c | 65 20 70 72 6f 63 2e 0d |er's idl|e proc..| |00003050| 0d 09 09 4d 61 6b 65 20 | 73 75 72 65 20 74 6f 20 |...Make |sure to | |00003060| 73 61 76 65 20 61 6e 64 | 20 72 65 73 74 6f 72 65 |save and| restore| |00003070| 20 74 68 65 20 70 6f 72 | 74 2c 20 73 69 6e 63 65 | the por|t, since| |00003080| 20 69 64 6c 65 20 70 72 | 6f 63 73 20 6d 61 79 20 | idle pr|ocs may | |00003090| 62 65 20 63 61 6c 6c 65 | 64 20 66 6f 72 0d 09 09 |be calle|d for...| |000030a0| 61 6e 79 20 77 69 6e 64 | 6f 77 2c 20 6e 6f 74 20 |any wind|ow, not | |000030b0| 6a 75 73 74 20 74 68 65 | 20 66 72 6f 6e 74 20 6f |just the| front o| |000030c0| 6e 65 2e 0d 09 2a 29 0d | 0d 09 50 52 4f 43 45 44 |ne...*).|..PROCED| |000030d0| 55 52 45 20 44 6f 49 64 | 6c 65 28 68 3a 20 57 48 |URE DoId|le(h: WH| |000030e0| 61 6e 64 6c 65 72 48 64 | 6c 29 3b 0d 0d 09 09 56 |andlerHd|l);....V| |000030f0| 41 52 0d 09 09 09 70 3a | 20 57 49 64 6c 65 50 72 |AR....p:| WIdlePr| |00003100| 6f 63 3b 0d 09 09 09 74 | 6d 70 50 6f 72 74 3a 20 |oc;....t|mpPort: | |00003110| 47 72 61 66 50 74 72 3b | 0d 0d 09 42 45 47 49 4e |GrafPtr;|...BEGIN| |00003120| 0d 09 09 49 46 20 68 20 | ad 20 4e 49 4c 20 54 48 |...IF h |. NIL TH| |00003130| 45 4e 0d 09 09 09 47 65 | 74 50 6f 72 74 28 74 6d |EN....Ge|tPort(tm| |00003140| 70 50 6f 72 74 29 3b 0d | 09 09 09 53 65 74 50 6f |pPort);.|...SetPo| |00003150| 72 74 28 68 5e 5e 2e 77 | 68 57 69 6e 64 29 3b 0d |rt(h^^.w|hWind);.| |00003160| 09 09 09 70 20 3a 3d 20 | 68 5e 5e 2e 77 68 49 64 |...p := |h^^.whId| |00003170| 6c 65 3b 0d 09 09 09 49 | 46 20 56 41 4c 28 41 44 |le;....I|F VAL(AD| |00003180| 44 52 45 53 53 2c 20 70 | 29 20 ad 20 56 41 4c 28 |DRESS, p|) . VAL(| |00003190| 41 44 44 52 45 53 53 2c | 20 4e 49 4c 29 20 54 48 |ADDRESS,| NIL) TH| |000031a0| 45 4e 20 70 3b 20 45 4e | 44 3b 0d 09 09 09 53 65 |EN p; EN|D;....Se| |000031b0| 74 50 6f 72 74 28 74 6d | 70 50 6f 72 74 29 3b 0d |tPort(tm|pPort);.| |000031c0| 09 09 45 4e 44 3b 0d 09 | 45 4e 44 20 44 6f 49 64 |..END;..|END DoId| |000031d0| 6c 65 3b 0d 0d 0d 09 28 | 2a d1 d1 d1 d1 d1 d1 d1 |le;....(|*.......| |000031e0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000031f0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00003200| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00003210| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00003220| 0d 09 09 44 49 41 4c 4f | 47 20 48 41 4e 44 4c 49 |...DIALO|G HANDLI| |00003230| 4e 47 20 52 4f 55 54 49 | 4e 45 53 0d 09 d1 d1 d1 |NG ROUTI|NES.....| |00003240| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00003250| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00003260| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00003270| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00003280| d1 d1 d1 d1 2a 29 0d 0d | 09 28 2a 0d 09 09 48 61 |....*)..|.(*...Ha| |00003290| 6e 64 6c 65 20 65 76 65 | 6e 74 20 69 66 20 69 74 |ndle eve|nt if it| |000032a0| 27 73 20 66 6f 72 20 61 | 20 64 69 61 6c 6f 67 2e |'s for a| dialog.| |000032b0| 20 20 54 68 65 20 65 76 | 65 6e 74 20 6d 75 73 74 | The ev|ent must| |000032c0| 20 62 65 20 6f 6e 65 20 | 6f 66 20 74 68 6f 73 65 | be one |of those| |000032d0| 20 74 68 61 74 20 69 73 | 0d 09 09 70 61 73 73 65 | that is|...passe| |000032e0| 64 20 74 6f 20 64 69 61 | 6c 6f 67 73 20 61 63 63 |d to dia|logs acc| |000032f0| 6f 72 64 69 6e 67 20 74 | 6f 20 64 6c 6f 67 45 76 |ording t|o dlogEv| |00003300| 65 6e 74 4d 61 73 6b 2e | 20 20 54 68 69 73 20 6d |entMask.| This m| |00003310| 61 73 6b 20 63 61 6e 20 | 62 65 20 73 65 74 20 73 |ask can |be set s| |00003320| 6f 20 74 68 61 74 0d 09 | 09 64 69 73 6b 20 69 6e |o that..|.disk in| |00003330| 73 65 72 74 73 2c 20 66 | 6f 72 20 69 6e 73 74 61 |serts, f|or insta| |00003340| 6e 63 65 2c 20 64 6f 6e | 27 74 20 67 65 74 20 65 |nce, don|'t get e| |00003350| 61 74 65 6e 20 75 70 2e | 0d 09 2a 29 0d 09 0d 09 |aten up.|..*)....| |00003360| 50 52 4f 43 45 44 55 52 | 45 20 44 6f 44 69 61 6c |PROCEDUR|E DoDial| |00003370| 6f 67 28 74 68 65 45 76 | 65 6e 74 3a 20 45 76 65 |og(theEv|ent: Eve| |00003380| 6e 74 52 65 63 6f 72 64 | 29 3a 20 42 4f 4f 4c 45 |ntRecord|): BOOLE| |00003390| 41 4e 3b 0d 09 0d 09 09 | 56 41 52 0d 09 09 09 64 |AN;.....|VAR....d| |000033a0| 68 3a 20 57 48 61 6e 64 | 6c 65 72 48 64 6c 3b 0d |h: WHand|lerHdl;.| |000033b0| 09 09 09 74 68 65 44 69 | 61 6c 6f 67 3a 20 44 69 |...theDi|alog: Di| |000033c0| 61 6c 6f 67 50 74 72 3b | 0d 09 09 09 77 68 61 74 |alogPtr;|....what| |000033d0| 3a 20 5b 30 2e 2e 31 35 | 5d 3b 0d 09 09 09 69 74 |: [0..15|];....it| |000033e0| 65 6d 3a 20 49 4e 54 45 | 47 45 52 3b 0d 09 09 09 |em: INTE|GER;....| |000033f0| 74 6d 70 50 6f 72 74 3a | 20 47 72 61 66 50 74 72 |tmpPort:| GrafPtr| |00003400| 3b 0d 09 09 09 61 42 6f | 6f 6c 3a 20 42 4f 4f 4c |;....aBo|ol: BOOL| |00003410| 45 41 4e 3b 0d 09 09 09 | 65 76 65 6e 74 3a 20 57 |EAN;....|event: W| |00003420| 45 76 65 6e 74 50 72 6f | 63 3b 20 0d 09 0d 09 42 |EventPro|c; ....B| |00003430| 45 47 49 4e 0d 09 09 28 | 2a 20 48 61 6e 64 6c 65 |EGIN...(|* Handle| |00003440| 20 63 6f 6d 6d 61 6e 64 | 20 6b 65 79 73 20 62 65 | command| keys be| |00003450| 66 6f 72 65 20 74 68 65 | 79 20 67 65 74 20 74 6f |fore the|y get to| |00003460| 20 49 73 44 69 61 6c 6f | 67 45 76 65 6e 74 20 2a | IsDialo|gEvent *| |00003470| 29 0d 09 09 77 68 61 74 | 20 3a 3d 20 74 68 65 45 |)...what| := theE| |00003480| 76 65 6e 74 2e 77 68 61 | 74 3b 0d 09 09 49 46 20 |vent.wha|t;...IF | |00003490| 28 28 77 68 61 74 3d 6b | 65 79 44 6f 77 6e 29 20 |((what=k|eyDown) | |000034a0| 4f 52 20 28 77 68 61 74 | 3d 61 75 74 6f 4b 65 79 |OR (what|=autoKey| |000034b0| 29 29 20 26 0d 09 09 09 | 09 28 42 69 74 41 6e 64 |)) &....|.(BitAnd| |000034c0| 28 56 41 4c 28 4c 4f 4e | 47 49 4e 54 2c 63 6d 64 |(VAL(LON|GINT,cmd| |000034d0| 4b 65 79 29 2c 56 41 4c | 28 4c 4f 4e 47 49 4e 54 |Key),VAL|(LONGINT| |000034e0| 2c 74 68 65 45 76 65 6e | 74 2e 6d 6f 64 69 66 69 |,theEven|t.modifi| |000034f0| 65 72 73 29 29 ad 30 44 | 29 20 54 48 45 4e 0d 09 |ers)).0D|) THEN..| |00003500| 09 09 44 6f 4d 65 6e 75 | 43 6f 6d 6d 61 6e 64 28 |..DoMenu|Command(| |00003510| 4d 65 6e 75 4b 65 79 28 | 56 41 4c 28 43 48 41 52 |MenuKey(|VAL(CHAR| |00003520| 2c 20 42 69 74 41 6e 64 | 28 56 41 4c 28 4c 4f 4e |, BitAnd|(VAL(LON| |00003530| 47 49 4e 54 2c 20 74 68 | 65 45 76 65 6e 74 2e 6d |GINT, th|eEvent.m| |00003540| 65 73 73 61 67 65 29 2c | 0d 09 09 09 09 09 09 09 |essage),|........| |00003550| 09 09 09 09 09 09 09 20 | 09 09 09 09 09 09 09 09 |....... |........| |00003560| 20 56 41 4c 28 4c 4f 4e | 47 49 4e 54 2c 20 63 68 | VAL(LON|GINT, ch| |00003570| 61 72 43 6f 64 65 4d 61 | 73 6b 29 29 29 29 29 3b |arCodeMa|sk)))));| |00003580| 0d 09 09 09 52 45 54 55 | 52 4e 20 28 54 52 55 45 |....RETU|RN (TRUE| |00003590| 29 3b 0d 09 09 45 4e 44 | 3b 0d 09 09 49 46 20 28 |);...END|;...IF (| |000035a0| 77 68 61 74 20 49 4e 20 | 64 6c 6f 67 45 76 65 6e |what IN |dlogEven| |000035b0| 74 4d 61 73 6b 29 20 26 | 20 49 73 44 69 61 6c 6f |tMask) &| IsDialo| |000035c0| 67 45 76 65 6e 74 28 74 | 68 65 45 76 65 6e 74 29 |gEvent(t|heEvent)| |000035d0| 20 54 48 45 4e 0d 09 09 | 09 49 46 20 44 69 61 6c | THEN...|.IF Dial| |000035e0| 6f 67 53 65 6c 65 63 74 | 28 74 68 65 45 76 65 6e |ogSelect|(theEven| |000035f0| 74 2c 20 74 68 65 44 69 | 61 6c 6f 67 2c 20 69 74 |t, theDi|alog, it| |00003600| 65 6d 29 20 54 48 45 4e | 0d 09 09 09 09 64 68 20 |em) THEN|.....dh | |00003610| 3a 3d 20 47 65 74 44 48 | 61 6e 64 6c 65 72 28 74 |:= GetDH|andler(t| |00003620| 68 65 44 69 61 6c 6f 67 | 29 3b 0d 09 09 09 09 49 |heDialog|);.....I| |00003630| 46 20 28 64 68 20 ad 20 | 4e 49 4c 29 20 26 20 28 |F (dh . |NIL) & (| |00003640| 56 41 4c 28 41 44 44 52 | 45 53 53 2c 20 64 68 5e |VAL(ADDR|ESS, dh^| |00003650| 5e 2e 77 68 45 76 65 6e | 74 29 20 ad 20 56 41 4c |^.whEven|t) . VAL| |00003660| 28 41 44 44 52 45 53 53 | 2c 20 4e 49 4c 29 29 20 |(ADDRESS|, NIL)) | |00003670| 54 48 45 4e 0d 09 09 09 | 09 09 47 65 74 50 6f 72 |THEN....|..GetPor| |00003680| 74 28 74 6d 70 50 6f 72 | 74 29 3b 0d 09 09 09 09 |t(tmpPor|t);.....| |00003690| 09 53 65 74 50 6f 72 74 | 28 74 68 65 44 69 61 6c |.SetPort|(theDial| |000036a0| 6f 67 29 3b 0d 09 09 09 | 09 09 65 76 65 6e 74 20 |og);....|..event | |000036b0| 3a 3d 20 64 68 5e 5e 2e | 77 68 45 76 65 6e 74 3b |:= dh^^.|whEvent;| |000036c0| 0d 09 09 09 09 09 61 42 | 6f 6f 6c 20 3a 3d 20 65 |......aB|ool := e| |000036d0| 76 65 6e 74 28 69 74 65 | 6d 2c 20 74 68 65 45 76 |vent(ite|m, theEv| |000036e0| 65 6e 74 29 3b 0d 09 09 | 09 09 09 53 65 74 50 6f |ent);...|...SetPo| |000036f0| 72 74 28 74 6d 70 50 6f | 72 74 29 3b 0d 09 09 09 |rt(tmpPo|rt);....| |00003700| 09 45 4e 44 3b 0d 09 09 | 09 45 4e 44 3b 0d 09 09 |.END;...|.END;...| |00003710| 09 52 45 54 55 52 4e 20 | 28 54 52 55 45 29 3b 0d |.RETURN |(TRUE);.| |00003720| 09 09 45 4e 44 3b 0d 09 | 09 52 45 54 55 52 4e 20 |..END;..|.RETURN | |00003730| 28 46 41 4c 53 45 29 3b | 0d 09 45 4e 44 20 44 6f |(FALSE);|..END Do| |00003740| 44 69 61 6c 6f 67 3b 0d | 0d 09 28 2a d1 d1 d1 d1 |Dialog;.|..(*....| |00003750| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00003760| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00003770| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00003780| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00003790| d1 d1 d1 0d 09 09 45 56 | 45 4e 54 20 48 41 4e 44 |......EV|ENT HAND| |000037a0| 4c 49 4e 47 20 52 4f 55 | 54 49 4e 45 53 0d 09 d1 |LING ROU|TINES...| |000037b0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000037c0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000037d0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000037e0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000037f0| d1 d1 d1 d1 d1 d1 2a 29 | 0d 0d 09 28 2a 0d 09 09 |......*)|...(*...| |00003800| 48 61 76 65 20 65 69 74 | 68 65 72 20 73 69 7a 65 |Have eit|her size| |00003810| 64 20 6f 72 20 7a 6f 6f | 6d 65 64 20 74 68 65 20 |d or zoo|med the | |00003820| 77 69 6e 64 6f 77 2e 20 | 20 49 6e 76 61 6c 69 64 |window. | Invalid| |00003830| 61 74 65 20 69 74 20 74 | 6f 20 66 6f 72 63 65 20 |ate it t|o force | |00003840| 61 6e 20 75 70 64 61 74 | 65 0d 09 09 61 6e 64 20 |an updat|e...and | |00003850| 73 65 74 20 74 68 65 20 | 22 72 65 73 69 7a 65 64 |set the |"resized| |00003860| 22 20 66 6c 61 67 20 69 | 6e 20 74 68 65 20 77 69 |" flag i|n the wi| |00003870| 6e 64 6f 77 20 68 61 6e | 64 6c 65 72 20 74 6f 20 |ndow han|dler to | |00003880| 74 72 75 65 2e 0d 09 2a | 29 0d 09 0d 09 50 52 4f |true...*|)....PRO| |00003890| 43 45 44 55 52 45 20 54 | 72 69 67 67 65 72 55 70 |CEDURE T|riggerUp| |000038a0| 64 61 74 65 28 68 3a 20 | 57 48 61 6e 64 6c 65 72 |date(h: |WHandler| |000038b0| 48 64 6c 3b 20 70 6f 72 | 74 3a 20 47 72 61 66 50 |Hdl; por|t: GrafP| |000038c0| 74 72 29 3b 0d 09 0d 09 | 42 45 47 49 4e 0d 09 09 |tr);....|BEGIN...| |000038d0| 53 65 74 50 6f 72 74 28 | 70 6f 72 74 29 3b 0d 09 |SetPort(|port);..| |000038e0| 09 49 6e 76 61 6c 52 65 | 63 74 28 70 6f 72 74 5e |.InvalRe|ct(port^| |000038f0| 2e 70 6f 72 74 52 65 63 | 74 29 3b 0d 09 09 49 46 |.portRec|t);...IF| |00003900| 20 68 23 4e 49 4c 20 54 | 48 45 4e 20 68 5e 5e 2e | h#NIL T|HEN h^^.| |00003910| 77 68 53 69 7a 65 64 20 | 3a 3d 20 54 52 55 45 3b |whSized |:= TRUE;| |00003920| 20 45 4e 44 3b 0d 09 45 | 4e 44 20 54 72 69 67 67 | END;..E|ND Trigg| |00003930| 65 72 55 70 64 61 74 65 | 3b 0d 09 0d 09 28 2a 0d |erUpdate|;....(*.| |00003940| 09 09 53 69 7a 65 20 61 | 20 77 69 6e 64 6f 77 2e |..Size a| window.| |00003950| 20 20 49 66 20 74 68 65 | 20 77 69 6e 64 6f 77 20 | If the| window | |00003960| 68 61 73 20 61 20 68 61 | 6e 64 6c 65 72 2c 20 75 |has a ha|ndler, u| |00003970| 73 65 20 74 68 65 20 67 | 72 6f 77 20 6c 69 6d 69 |se the g|row limi| |00003980| 74 73 20 69 6e 20 74 68 | 65 0d 09 09 68 61 6e 64 |ts in th|e...hand| |00003990| 6c 65 72 20 72 65 63 6f | 72 64 2c 20 6f 74 68 65 |ler reco|rd, othe| |000039a0| 72 77 69 73 65 20 75 73 | 65 20 74 68 65 20 64 65 |rwise us|e the de| |000039b0| 66 61 75 6c 74 73 2e 0d | 0d 09 09 54 68 65 20 70 |faults..|...The p| |000039c0| 6f 72 74 52 65 63 74 20 | 69 73 20 69 6e 76 61 6c |ortRect |is inval| |000039d0| 69 64 61 74 65 64 20 74 | 6f 20 66 6f 72 63 65 20 |idated t|o force | |000039e0| 61 6e 20 75 70 64 61 74 | 65 20 65 76 65 6e 74 2e |an updat|e event.| |000039f0| 20 20 54 68 65 20 68 61 | 6e 64 6c 65 72 27 73 20 | The ha|ndler's | |00003a00| 75 70 64 61 74 65 0d 09 | 09 70 72 6f 63 65 64 75 |update..|.procedu| |00003a10| 72 65 20 73 68 6f 75 6c | 64 20 63 68 65 63 6b 20 |re shoul|d check | |00003a20| 74 68 65 20 70 61 72 61 | 6d 65 74 65 72 20 70 61 |the para|meter pa| |00003a30| 73 73 65 64 20 74 6f 20 | 69 74 20 74 6f 20 63 68 |ssed to |it to ch| |00003a40| 65 63 6b 20 77 68 65 74 | 68 65 72 20 74 68 65 0d |eck whet|her the.| |00003a50| 09 09 77 69 6e 64 6f 77 | 20 68 61 73 20 63 68 61 |..window| has cha| |00003a60| 6e 67 65 64 20 73 69 7a | 65 2c 20 69 66 20 69 74 |nged siz|e, if it| |00003a70| 20 6e 65 65 64 73 20 74 | 6f 20 61 64 6a 75 73 74 | needs t|o adjust| |00003a80| 20 69 74 73 65 6c 66 20 | 74 6f 20 74 68 65 20 6e | itself |to the n| |00003a90| 65 77 20 73 69 7a 65 2e | 0d 09 09 54 48 49 53 20 |ew size.|...THIS | |00003aa0| 49 53 20 41 20 43 4f 4e | 56 45 4e 54 49 4f 4e 2e |IS A CON|VENTION.| |00003ab0| 20 20 55 70 64 61 74 65 | 20 70 72 6f 63 73 20 6d | Update| procs m| |00003ac0| 75 73 74 20 6e 6f 74 69 | 63 65 20 67 72 6f 77 20 |ust noti|ce grow | |00003ad0| 22 65 76 65 6e 74 73 22 | 2c 20 74 68 65 72 65 20 |"events"|, there | |00003ae0| 69 73 20 6e 6f 0d 09 09 | 70 72 6f 63 65 64 75 72 |is no...|procedur| |00003af0| 65 20 73 70 65 63 69 66 | 69 63 61 6c 6c 79 20 66 |e specif|ically f| |00003b00| 6f 72 20 73 75 63 68 20 | 65 76 65 6e 74 73 2e 0d |or such |events..| |00003b10| 0d 09 09 54 68 65 20 63 | 6c 69 70 70 69 6e 67 20 |...The c|lipping | |00003b20| 72 65 63 74 61 6e 67 6c | 65 20 69 73 20 6e 6f 74 |rectangl|e is not| |00003b30| 20 72 65 73 65 74 2e 20 | 20 49 66 20 74 68 65 20 | reset. | If the | |00003b40| 68 6f 73 74 20 61 70 70 | 6c 69 63 61 74 69 6f 6e |host app|lication| |00003b50| 20 6b 65 65 70 73 20 74 | 68 65 0d 09 09 63 6c 69 | keeps t|he...cli| |00003b60| 70 70 69 6e 67 20 73 65 | 74 20 74 6f 20 74 68 65 |pping se|t to the| |00003b70| 20 74 68 65 20 70 6f 72 | 74 52 65 63 74 20 6f 72 | the por|tRect or| |00003b80| 20 73 6f 6d 65 74 68 69 | 6e 67 20 73 69 6d 69 6c | somethi|ng simil| |00003b90| 61 72 2c 20 74 68 65 6e | 20 69 74 20 77 69 6c 6c |ar, then| it will| |00003ba0| 20 68 61 76 65 20 74 6f | 0d 09 09 61 72 72 61 6e | have to|...arran| |00003bb0| 67 65 20 74 6f 20 74 72 | 65 61 74 20 77 69 6e 64 |ge to tr|eat wind| |00003bc0| 6f 77 20 67 72 6f 77 69 | 6e 67 20 77 69 74 68 20 |ow growi|ng with | |00003bd0| 6d 6f 72 65 20 63 61 72 | 65 2e 0d 09 2a 29 0d 0d |more car|e...*)..| |00003be0| 09 50 52 4f 43 45 44 55 | 52 45 20 44 6f 47 72 6f |.PROCEDU|RE DoGro| |00003bf0| 77 28 68 3a 20 57 48 61 | 6e 64 6c 65 72 48 64 6c |w(h: WHa|ndlerHdl| |00003c00| 3b 20 70 6f 72 74 3a 20 | 47 72 61 66 50 74 72 3b |; port: |GrafPtr;| |00003c10| 20 73 74 61 72 74 50 74 | 3a 20 50 6f 69 6e 74 29 | startPt|: Point)| |00003c20| 3b 0d 0d 09 09 56 41 52 | 0d 09 09 09 72 3a 20 52 |;....VAR|....r: R| |00003c30| 65 63 74 3b 0d 09 09 09 | 67 72 6f 77 52 65 73 3a |ect;....|growRes:| |00003c40| 20 4c 4f 4e 47 49 4e 54 | 3b 0d 0d 09 42 45 47 49 | LONGINT|;...BEGI| |00003c50| 4e 0d 09 09 49 46 20 68 | 20 23 20 4e 49 4c 20 54 |N...IF h| # NIL T| |00003c60| 48 45 4e 20 72 20 3a 3d | 20 68 5e 5e 2e 77 68 47 |HEN r :=| h^^.whG| |00003c70| 72 6f 77 0d 09 09 45 4c | 53 45 20 72 20 3a 3d 20 |row...EL|SE r := | |00003c80| 67 72 6f 77 52 65 63 74 | 3b 0d 09 09 45 4e 44 3b |growRect|;...END;| |00003c90| 0d 09 09 67 72 6f 77 52 | 65 73 20 3a 3d 20 47 72 |...growR|es := Gr| |00003ca0| 6f 77 57 69 6e 64 6f 77 | 28 70 6f 72 74 2c 20 73 |owWindow|(port, s| |00003cb0| 74 61 72 74 50 74 2c 20 | 72 29 3b 0d 09 09 49 46 |tartPt, |r);...IF| |00003cc0| 20 67 72 6f 77 52 65 73 | 20 23 20 30 44 20 54 48 | growRes| # 0D TH| |00003cd0| 45 4e 0d 09 09 09 53 69 | 7a 65 57 69 6e 64 6f 77 |EN....Si|zeWindow| |00003ce0| 28 70 6f 72 74 2c 20 4c | 6f 57 6f 72 64 28 67 72 |(port, L|oWord(gr| |00003cf0| 6f 77 52 65 73 29 2c 20 | 48 69 57 6f 72 64 28 67 |owRes), |HiWord(g| |00003d00| 72 6f 77 52 65 73 29 2c | 20 46 41 4c 53 45 29 3b |rowRes),| FALSE);| |00003d10| 0d 09 09 09 54 72 69 67 | 67 65 72 55 70 64 61 74 |....Trig|gerUpdat| |00003d20| 65 28 68 2c 20 70 6f 72 | 74 29 3b 0d 09 09 45 4e |e(h, por|t);...EN| |00003d30| 44 3b 0d 09 45 4e 44 20 | 44 6f 47 72 6f 77 3b 0d |D;..END |DoGrow;.| |00003d40| 09 0d 09 28 2a 0d 09 09 | 5a 6f 6f 6d 20 74 68 65 |...(*...|Zoom the| |00003d50| 20 63 75 72 72 65 6e 74 | 20 77 69 6e 64 6f 77 2e | current| window.| |00003d60| 20 20 56 65 72 79 20 73 | 69 6d 69 6c 61 72 20 74 | Very s|imilar t| |00003d70| 6f 20 44 6f 47 72 6f 77 | 2e 0d 09 2a 29 0d 09 0d |o DoGrow|...*)...| |00003d80| 09 50 52 4f 43 45 44 55 | 52 45 20 44 6f 5a 6f 6f |.PROCEDU|RE DoZoo| |00003d90| 6d 28 68 3a 20 57 48 61 | 6e 64 6c 65 72 48 64 6c |m(h: WHa|ndlerHdl| |00003da0| 3b 20 70 6f 72 74 3a 20 | 47 72 61 66 50 74 72 3b |; port: |GrafPtr;| |00003db0| 20 70 61 72 74 43 6f 64 | 65 3a 20 49 4e 54 45 47 | partCod|e: INTEG| |00003dc0| 45 52 29 3b 0d 09 0d 09 | 42 45 47 49 4e 0d 09 09 |ER);....|BEGIN...| |00003dd0| 53 65 74 50 6f 72 74 28 | 70 6f 72 74 29 3b 0d 09 |SetPort(|port);..| |00003de0| 09 5a 6f 6f 6d 57 69 6e | 64 6f 77 28 70 6f 72 74 |.ZoomWin|dow(port| |00003df0| 2c 20 70 61 72 74 43 6f | 64 65 2c 20 46 41 4c 53 |, partCo|de, FALS| |00003e00| 45 29 3b 0d 09 09 54 72 | 69 67 67 65 72 55 70 64 |E);...Tr|iggerUpd| |00003e10| 61 74 65 28 68 2c 20 70 | 6f 72 74 29 3b 0d 09 45 |ate(h, p|ort);..E| |00003e20| 4e 44 20 44 6f 5a 6f 6f | 6d 3b 0d 0d 0d 09 28 2a |ND DoZoo|m;....(*| |00003e30| 0d 09 09 47 65 6e 65 72 | 61 6c 20 65 76 65 6e 74 |...Gener|al event| |00003e40| 20 68 61 6e 64 6c 65 72 | 2e 0d 09 2a 29 0d 0d 09 | handler|...*)...| |00003e50| 50 52 4f 43 45 44 55 52 | 45 20 44 6f 45 76 65 6e |PROCEDUR|E DoEven| |00003e60| 74 28 74 68 65 45 76 74 | 3a 20 45 76 65 6e 74 52 |t(theEvt|: EventR| |00003e70| 65 63 6f 72 64 29 3b 0d | 0d 09 09 56 41 52 0d 09 |ecord);.|...VAR..| |00003e80| 09 09 74 68 65 45 76 65 | 6e 74 3a 20 45 76 65 6e |..theEve|nt: Even| |00003e90| 74 52 65 63 6f 72 64 3b | 0d 09 09 09 65 76 74 50 |tRecord;|....evtP| |00003ea0| 74 3a 09 09 50 6f 69 6e | 74 3b 0d 09 09 09 65 76 |t:..Poin|t;....ev| |00003eb0| 74 50 6f 72 74 3a 09 47 | 72 61 66 50 74 72 3b 0d |tPort:.G|rafPtr;.| |00003ec0| 09 09 09 65 76 74 50 61 | 72 74 3a 09 49 4e 54 45 |...evtPa|rt:.INTE| |00003ed0| 47 45 52 3b 0d 09 09 09 | 65 76 74 43 68 61 72 3a |GER;....|evtChar:| |00003ee0| 09 43 48 41 52 3b 0d 09 | 09 09 65 76 74 4d 6f 64 |.CHAR;..|..evtMod| |00003ef0| 73 3a 09 42 49 54 53 45 | 54 3b 0d 09 09 09 68 3a |s:.BITSE|T;....h:| |00003f00| 09 09 09 09 57 48 61 6e | 64 6c 65 72 48 64 6c 3b |....WHan|dlerHdl;| |00003f10| 0d 09 09 09 72 3a 09 09 | 09 09 52 65 63 74 3b 0d |....r:..|..Rect;.| |00003f20| 09 09 09 61 6e 49 6e 74 | 3a 09 09 49 4e 54 45 47 |...anInt|:..INTEG| |00003f30| 45 52 3b 0d 0d 09 42 45 | 47 49 4e 0d 09 09 74 68 |ER;...BE|GIN...th| |00003f40| 65 45 76 65 6e 74 20 3a | 3d 20 74 68 65 45 76 74 |eEvent :|= theEvt| |00003f50| 3b 0d 09 09 49 46 20 4e | 4f 54 20 44 6f 44 69 61 |;...IF N|OT DoDia| |00003f60| 6c 6f 67 28 74 68 65 45 | 76 65 6e 74 29 20 54 48 |log(theE|vent) TH| |00003f70| 45 4e 0d 09 09 09 65 76 | 74 50 74 20 3a 3d 20 74 |EN....ev|tPt := t| |00003f80| 68 65 45 76 65 6e 74 2e | 77 68 65 72 65 3b 0d 09 |heEvent.|where;..| |00003f90| 09 09 43 41 53 45 20 74 | 68 65 45 76 65 6e 74 2e |..CASE t|heEvent.| |00003fa0| 77 68 61 74 20 4f 46 0d | 09 09 09 09 28 2a 09 4e |what OF.|....(*.N| |00003fb0| 75 6c 6c 45 76 65 6e 74 | 3a 09 49 67 6e 6f 72 65 |ullEvent|:.Ignore| |00003fc0| 20 69 74 20 2a 29 0d 09 | 09 09 09 6e 75 6c 6c 45 | it *)..|...nullE| |00003fd0| 76 65 6e 74 3a 20 3b 0d | 09 09 09 09 7c 0d 09 09 |vent: ;.|....|...| |00003fe0| 09 09 28 2a 09 4d 6f 75 | 73 65 44 6f 77 6e 3a 09 |..(*.Mou|seDown:.| |00003ff0| 47 65 74 20 74 68 65 20 | 77 69 6e 64 6f 77 20 74 |Get the |window t| |00004000| 68 61 74 20 74 68 65 20 | 63 6c 69 63 6b 20 77 61 |hat the |click wa| |00004010| 73 20 69 6e 2c 20 61 6e | 64 20 74 68 65 20 77 69 |s in, an|d the wi| |00004020| 6e 64 6f 77 20 70 61 72 | 74 2e 2a 29 0d 09 09 09 |ndow par|t.*)....| |00004030| 09 6d 6f 75 73 65 44 6f | 77 6e 3a 0d 09 09 09 09 |.mouseDo|wn:.....| |00004040| 09 65 76 74 50 61 72 74 | 20 3a 3d 20 46 69 6e 64 |.evtPart| := Find| |00004050| 57 69 6e 64 6f 77 28 65 | 76 74 50 74 2c 20 65 76 |Window(e|vtPt, ev| |00004060| 74 50 6f 72 74 29 3b 0d | 09 09 09 09 09 68 20 3a |tPort);.|.....h :| |00004070| 3d 20 47 65 74 57 48 61 | 6e 64 6c 65 72 28 65 76 |= GetWHa|ndler(ev| |00004080| 74 50 6f 72 74 29 3b 0d | 09 09 09 09 09 43 41 53 |tPort);.|.....CAS| |00004090| 45 20 65 76 74 50 61 72 | 74 20 4f 46 0d 09 09 09 |E evtPar|t OF....| |000040a0| 09 09 09 28 2a 09 44 41 | 20 57 69 6e 64 6f 77 20 |...(*.DA| Window | |000040b0| 2d 20 70 61 73 73 20 62 | 61 63 6b 20 74 6f 20 74 |- pass b|ack to t| |000040c0| 68 65 20 73 79 73 74 65 | 6d 2e 20 2a 29 0d 09 09 |he syste|m. *)...| |000040d0| 09 09 09 09 69 6e 53 79 | 73 57 69 6e 64 6f 77 3a |....inSy|sWindow:| |000040e0| 09 53 79 73 74 65 6d 43 | 6c 69 63 6b 28 74 68 65 |.SystemC|lick(the| |000040f0| 45 76 65 6e 74 2c 20 65 | 76 74 50 6f 72 74 29 3b |Event, e|vtPort);| |00004100| 0d 09 09 09 09 09 09 7c | 0d 09 09 09 09 09 09 28 |.......||.......(| |00004110| 2a 09 69 6e 20 74 68 65 | 20 6d 65 6e 75 20 62 61 |*.in the| menu ba| |00004120| 72 20 2d 20 54 72 61 63 | 6b 20 74 68 65 20 6d 6f |r - Trac|k the mo| |00004130| 75 73 65 20 26 20 65 78 | 65 63 75 74 65 20 73 65 |use & ex|ecute se| |00004140| 6c 65 63 74 69 6f 6e 2c | 20 69 66 20 61 6e 79 2e |lection,| if any.| |00004150| 20 2a 29 0d 09 09 09 09 | 09 09 69 6e 4d 65 6e 75 | *).....|..inMenu| |00004160| 42 61 72 3a 09 44 6f 4d | 65 6e 75 43 6f 6d 6d 61 |Bar:.DoM|enuComma| |00004170| 6e 64 28 4d 65 6e 75 53 | 65 6c 65 63 74 28 65 76 |nd(MenuS|elect(ev| |00004180| 74 50 74 29 29 3b 0d 09 | 09 09 09 09 09 7c 0d 09 |tPt));..|.....|..| |00004190| 09 09 09 09 09 28 2a 09 | 69 6e 20 74 68 65 20 67 |.....(*.|in the g| |000041a0| 72 6f 77 20 62 6f 78 20 | 2d 20 72 65 73 69 7a 65 |row box |- resize| |000041b0| 20 74 68 65 20 77 69 6e | 64 6f 77 2e 20 2a 29 0d | the win|dow. *).| |000041c0| 09 09 09 09 09 09 69 6e | 47 72 6f 77 3a 09 44 6f |......in|Grow:.Do| |000041d0| 47 72 6f 77 28 68 2c 20 | 65 76 74 50 6f 72 74 2c |Grow(h, |evtPort,| |000041e0| 20 65 76 74 50 74 29 3b | 0d 09 09 09 09 09 09 7c | evtPt);|.......|| |000041f0| 0d 09 09 09 09 09 09 28 | 2a 09 69 6e 20 74 69 74 |.......(|*.in tit| |00004200| 6c 65 20 62 61 72 2e 20 | 20 44 72 61 67 20 77 69 |le bar. | Drag wi| |00004210| 6e 64 6f 77 2e 20 20 4c | 65 61 76 65 20 61 74 20 |ndow. L|eave at | |00004220| 6c 65 61 73 74 20 34 20 | 70 69 78 65 6c 73 20 69 |least 4 |pixels i| |00004230| 6e 20 62 6f 74 68 0d 09 | 09 09 09 09 09 09 09 64 |n both..|.......d| |00004240| 69 72 65 63 74 69 6f 6e | 73 2e 20 2a 29 0d 09 09 |irection|s. *)...| |00004250| 09 09 09 09 69 6e 44 72 | 61 67 3a 0d 09 09 09 09 |....inDr|ag:.....| |00004260| 09 09 09 72 20 3a 3d 20 | 73 63 72 65 65 6e 50 6f |...r := |screenPo| |00004270| 72 74 5e 2e 70 6f 72 74 | 52 65 63 74 3b 0d 09 09 |rt^.port|Rect;...| |00004280| 09 09 09 09 09 49 4e 43 | 28 72 2e 74 6f 70 2c 20 |.....INC|(r.top, | |00004290| 6d 42 61 72 48 65 69 67 | 68 74 29 3b 09 28 2a 20 |mBarHeig|ht);.(* | |000042a0| 73 6b 69 70 20 64 6f 77 | 6e 20 70 61 73 74 20 6d |skip dow|n past m| |000042b0| 65 6e 75 20 62 61 72 20 | 2a 29 0d 09 09 09 09 09 |enu bar |*)......| |000042c0| 09 09 49 6e 73 65 74 52 | 65 63 74 28 72 2c 20 34 |..InsetR|ect(r, 4| |000042d0| 2c 20 34 29 3b 0d 09 09 | 09 09 09 09 09 44 72 61 |, 4);...|.....Dra| |000042e0| 67 57 69 6e 64 6f 77 28 | 65 76 74 50 6f 72 74 2c |gWindow(|evtPort,| |000042f0| 20 65 76 74 50 74 2c 20 | 72 29 3b 0d 09 09 09 09 | evtPt, |r);.....| |00004300| 09 09 7c 0d 09 09 09 09 | 09 09 28 2a 09 69 6e 20 |..|.....|..(*.in | |00004310| 63 6c 6f 73 65 20 62 6f | 78 2e 20 20 43 61 6c 6c |close bo|x. Call| |00004320| 20 74 68 65 20 63 6c 6f | 73 65 20 70 72 6f 63 20 | the clo|se proc | |00004330| 69 66 20 74 68 65 20 77 | 69 6e 64 6f 77 20 68 61 |if the w|indow ha| |00004340| 73 20 6f 6e 65 2e 20 2a | 29 0d 09 09 09 09 09 09 |s one. *|).......| |00004350| 69 6e 47 6f 41 77 61 79 | 3a 0d 09 09 09 09 09 09 |inGoAway|:.......| |00004360| 09 49 46 20 54 72 61 63 | 6b 47 6f 41 77 61 79 28 |.IF Trac|kGoAway(| |00004370| 65 76 74 50 6f 72 74 2c | 20 65 76 74 50 74 29 20 |evtPort,| evtPt) | |00004380| 54 48 45 4e 20 44 6f 43 | 6c 6f 73 65 28 68 29 3b |THEN DoC|lose(h);| |00004390| 20 45 4e 44 3b 0d 09 09 | 09 09 09 09 7c 0d 09 09 | END;...|....|...| |000043a0| 09 09 09 09 28 2a 09 69 | 6e 20 63 6f 6e 74 65 6e |....(*.i|n conten| |000043b0| 74 20 72 65 67 69 6f 6e | 2e 20 20 49 66 20 77 69 |t region|. If wi| |000043c0| 6e 64 6f 77 20 77 61 73 | 6e 27 74 20 69 6e 20 66 |ndow was|n't in f| |000043d0| 72 6f 6e 74 2c 20 73 65 | 6c 65 63 74 20 69 74 2c |ront, se|lect it,| |000043e0| 0d 09 09 09 09 09 09 09 | 09 6f 74 68 65 72 77 69 |........|.otherwi| |000043f0| 73 65 20 70 61 73 73 20 | 74 68 65 20 63 6c 69 63 |se pass |the clic| |00004400| 6b 20 74 6f 20 74 68 65 | 20 77 69 6e 64 6f 77 27 |k to the| window'| |00004410| 73 20 6d 6f 75 73 65 20 | 68 61 6e 64 6c 65 72 2e |s mouse |handler.| |00004420| 20 2a 29 0d 09 09 09 09 | 09 09 69 6e 43 6f 6e 74 | *).....|..inCont| |00004430| 65 6e 74 3a 0d 09 09 09 | 09 09 09 09 49 46 20 65 |ent:....|....IF e| |00004440| 76 74 50 6f 72 74 20 23 | 20 46 72 6f 6e 74 57 69 |vtPort #| FrontWi| |00004450| 6e 64 6f 77 28 29 20 54 | 48 45 4e 20 53 65 6c 65 |ndow() T|HEN Sele| |00004460| 63 74 57 69 6e 64 6f 77 | 28 65 76 74 50 6f 72 74 |ctWindow|(evtPort| |00004470| 29 3b 0d 09 09 09 09 09 | 09 09 45 4c 53 45 20 44 |);......|..ELSE D| |00004480| 6f 4d 6f 75 73 65 28 68 | 2c 20 74 68 65 45 76 65 |oMouse(h|, theEve| |00004490| 6e 74 29 3b 0d 09 09 09 | 09 09 09 09 45 4e 44 3b |nt);....|....END;| |000044a0| 0d 09 09 09 09 09 09 7c | 0d 09 09 09 09 09 09 28 |.......||.......(| |000044b0| 2a 09 69 6e 20 7a 6f 6f | 6d 20 62 6f 78 2e 20 20 |*.in zoo|m box. | |000044c0| 54 72 61 63 6b 20 74 68 | 65 20 63 6c 69 63 6b 20 |Track th|e click | |000044d0| 61 6e 64 20 74 68 65 6e | 20 7a 6f 6f 6d 20 74 68 |and then| zoom th| |000044e0| 65 20 77 69 6e 64 6f 77 | 20 69 66 20 6e 65 63 65 |e window| if nece| |000044f0| 73 73 61 72 79 20 2a 29 | 0d 09 09 09 09 09 09 69 |ssary *)|.......i| |00004500| 6e 5a 6f 6f 6d 49 6e 2c | 20 69 6e 5a 6f 6f 6d 4f |nZoomIn,| inZoomO| |00004510| 75 74 3a 0d 09 09 09 09 | 09 09 09 49 46 20 54 72 |ut:.....|...IF Tr| |00004520| 61 63 6b 42 6f 78 28 65 | 76 74 50 6f 72 74 2c 20 |ackBox(e|vtPort, | |00004530| 65 76 74 50 74 2c 20 65 | 76 74 50 61 72 74 29 20 |evtPt, e|vtPart) | |00004540| 54 48 45 4e 0d 09 09 09 | 09 09 09 09 09 44 6f 5a |THEN....|.....DoZ| |00004550| 6f 6f 6d 28 68 2c 20 65 | 76 74 50 6f 72 74 2c 20 |oom(h, e|vtPort, | |00004560| 65 76 74 50 61 72 74 29 | 3b 20 0d 09 09 09 09 09 |evtPart)|; ......| |00004570| 09 09 45 4e 44 3b 0d 09 | 09 09 09 09 45 4e 44 20 |..END;..|....END | |00004580| 28 2a 20 43 41 53 45 20 | 65 76 74 50 61 72 74 20 |(* CASE |evtPart | |00004590| 2a 29 20 3b 0d 09 09 09 | 09 7c 0d 09 09 09 09 28 |*) ;....|.|.....(| |000045a0| 2a 0d 09 09 09 09 09 4b | 65 79 20 65 76 65 6e 74 |*......K|ey event| |000045b0| 2e 20 20 49 66 20 74 68 | 65 20 63 6f 6d 6d 61 6e |. If th|e comman| |000045c0| 64 20 6b 65 79 20 77 61 | 73 20 64 6f 77 6e 2c 20 |d key wa|s down, | |000045d0| 70 72 6f 63 65 73 73 20 | 61 73 20 6d 65 6e 75 20 |process |as menu | |000045e0| 69 74 65 6d 0d 09 09 09 | 09 09 73 65 6c 65 63 74 |item....|..select| |000045f0| 69 6f 6e 2c 20 6f 74 68 | 65 72 77 69 73 65 20 70 |ion, oth|erwise p| |00004600| 61 73 73 20 74 68 65 20 | 63 68 61 72 61 63 74 65 |ass the |characte| |00004610| 72 20 61 6e 64 20 74 68 | 65 20 6d 6f 64 69 66 69 |r and th|e modifi| |00004620| 65 72 73 20 66 6c 61 67 | 73 20 74 6f 0d 09 09 09 |ers flag|s to....| |00004630| 09 09 74 68 65 20 61 63 | 74 69 76 65 20 77 69 6e |..the ac|tive win| |00004640| 64 6f 77 27 73 20 6b 65 | 79 20 68 61 6e 64 6c 65 |dow's ke|y handle| |00004650| 72 2e 0d 09 09 09 09 2a | 29 0d 09 09 09 09 6b 65 |r......*|).....ke| |00004660| 79 44 6f 77 6e 2c 20 61 | 75 74 6f 4b 65 79 3a 0d |yDown, a|utoKey:.| |00004670| 09 09 09 09 09 65 76 74 | 43 68 61 72 20 3a 3d 20 |.....evt|Char := | |00004680| 56 41 4c 28 43 48 41 52 | 2c 20 42 69 74 41 6e 64 |VAL(CHAR|, BitAnd| |00004690| 28 74 68 65 45 76 65 6e | 74 2e 6d 65 73 73 61 67 |(theEven|t.messag| |000046a0| 65 2c 63 68 61 72 43 6f | 64 65 4d 61 73 6b 29 29 |e,charCo|deMask))| |000046b0| 3b 0d 09 09 09 09 09 65 | 76 74 4d 6f 64 73 20 3a |;......e|vtMods :| |000046c0| 3d 20 56 41 4c 28 42 49 | 54 53 45 54 2c 20 74 68 |= VAL(BI|TSET, th| |000046d0| 65 45 76 65 6e 74 2e 6d | 6f 64 69 66 69 65 72 73 |eEvent.m|odifiers| |000046e0| 29 3b 0d 09 09 09 09 09 | 44 6f 4b 65 79 28 47 65 |);......|DoKey(Ge| |000046f0| 74 57 48 61 6e 64 6c 65 | 72 28 46 72 6f 6e 74 57 |tWHandle|r(FrontW| |00004700| 69 6e 64 6f 77 28 29 29 | 2c 20 65 76 74 43 68 61 |indow())|, evtCha| |00004710| 72 2c 20 65 76 74 4d 6f | 64 73 29 3b 0d 09 09 09 |r, evtMo|ds);....| |00004720| 09 7c 0d 09 09 09 09 28 | 2a 09 55 70 64 61 74 65 |.|.....(|*.Update| |00004730| 20 61 20 77 69 6e 64 6f | 77 20 2a 29 0d 09 09 09 | a windo|w *)....| |00004740| 09 75 70 64 61 74 65 45 | 76 74 3a 09 44 6f 55 70 |.updateE|vt:.DoUp| |00004750| 64 61 74 65 28 47 65 74 | 57 48 61 6e 64 6c 65 72 |date(Get|WHandler| |00004760| 28 56 41 4c 28 57 69 6e | 64 6f 77 50 74 72 2c 20 |(VAL(Win|dowPtr, | |00004770| 74 68 65 45 76 65 6e 74 | 2e 6d 65 73 73 61 67 65 |theEvent|.message| |00004780| 29 29 29 3b 0d 09 09 09 | 09 7c 0d 09 09 09 09 28 |)));....|.|.....(| |00004790| 2a 09 52 65 73 70 6f 6e | 64 20 74 6f 20 61 63 74 |*.Respon|d to act| |000047a0| 69 76 61 74 65 2f 64 65 | 61 63 74 69 76 61 74 65 |ivate/de|activate| |000047b0| 20 65 76 65 6e 74 73 20 | 2a 29 0d 09 09 09 09 61 | events |*).....a| |000047c0| 63 74 69 76 61 74 65 45 | 76 74 3a 20 0d 09 09 09 |ctivateE|vt: ....| |000047d0| 09 09 44 6f 41 63 74 69 | 76 61 74 65 28 09 47 65 |..DoActi|vate(.Ge| |000047e0| 74 57 48 61 6e 64 6c 65 | 72 28 56 41 4c 28 57 69 |tWHandle|r(VAL(Wi| |000047f0| 6e 64 6f 77 50 74 72 2c | 74 68 65 45 76 65 6e 74 |ndowPtr,|theEvent| |00004800| 2e 6d 65 73 73 61 67 65 | 29 29 2c 0d 09 09 09 09 |.message|)),.....| |00004810| 09 09 09 09 09 09 09 61 | 63 74 69 76 65 46 6c 61 |.......a|ctiveFla| |00004820| 67 20 49 4e 20 56 41 4c | 28 42 49 54 53 45 54 2c |g IN VAL|(BITSET,| |00004830| 74 68 65 45 76 65 6e 74 | 2e 6d 6f 64 69 66 69 65 |theEvent|.modifie| |00004840| 72 73 29 29 3b 0d 09 09 | 09 09 7c 0d 09 09 09 09 |rs));...|..|.....| |00004850| 28 2a 09 48 61 6e 64 6c | 65 20 69 6e 73 65 72 74 |(*.Handl|e insert| |00004860| 69 6f 6e 73 20 6f 66 20 | 75 6e 69 6e 69 74 69 61 |ions of |uninitia| |00004870| 6c 69 7a 65 64 20 64 69 | 73 6b 73 2e 20 2a 29 0d |lized di|sks. *).| |00004880| 09 09 09 09 64 69 73 6b | 45 76 74 3a 0d 09 09 09 |....disk|Evt:....| |00004890| 09 09 49 46 20 48 69 57 | 6f 72 64 28 74 68 65 45 |..IF HiW|ord(theE| |000048a0| 76 65 6e 74 2e 6d 65 73 | 73 61 67 65 29 20 23 20 |vent.mes|sage) # | |000048b0| 6e 6f 45 72 72 20 54 48 | 45 4e 0d 09 09 09 09 09 |noErr TH|EN......| |000048c0| 09 44 49 4c 6f 61 64 3b | 0d 09 09 09 09 09 09 61 |.DILoad;|.......a| |000048d0| 6e 49 6e 74 20 3a 3d 20 | 44 49 42 61 64 4d 6f 75 |nInt := |DIBadMou| |000048e0| 6e 74 28 64 69 73 6b 49 | 6e 69 74 50 74 2c 20 74 |nt(diskI|nitPt, t| |000048f0| 68 65 45 76 65 6e 74 2e | 6d 65 73 73 61 67 65 29 |heEvent.|message)| |00004900| 3b 0d 09 09 09 09 09 09 | 44 49 55 6e 4c 6f 61 64 |;.......|DIUnLoad| |00004910| 3b 0d 09 09 09 09 09 45 | 4e 44 3b 0d 09 09 09 09 |;......E|ND;.....| |00004920| 45 4c 53 45 20 28 2a 20 | 44 6f 20 6e 6f 74 68 69 |ELSE (* |Do nothi| |00004930| 6e 67 20 2a 29 20 3b 0d | 09 09 09 45 4e 44 20 28 |ng *) ;.|...END (| |00004940| 2a 20 43 41 53 45 20 2a | 29 20 3b 0d 09 09 45 4e |* CASE *|) ;...EN| |00004950| 44 20 28 2a 20 4e 6f 74 | 20 61 20 64 69 61 6c 6f |D (* Not| a dialo| |00004960| 67 20 65 76 65 6e 74 20 | 2a 29 3b 0d 09 45 4e 44 |g event |*);..END| |00004970| 20 44 6f 45 76 65 6e 74 | 3b 0d 0d 0d 28 2a d1 d1 | DoEvent|;...(*..| |00004980| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00004990| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000049a0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000049b0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000049c0| d1 d1 d1 d1 d1 d1 d1 d1 | 0d 09 09 09 09 09 09 09 |........|........| |000049d0| 09 49 4e 54 45 52 46 41 | 43 45 20 28 50 55 42 4c |.INTERFA|CE (PUBL| |000049e0| 49 43 29 20 52 4f 55 54 | 49 4e 45 53 0d d1 d1 d1 |IC) ROUT|INES....| |000049f0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00004a00| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00004a10| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00004a20| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00004a30| d1 d1 d1 d1 d1 d1 d1 2a | 29 0d 0d 09 28 2a 0d 09 |.......*|)...(*..| |00004a40| 09 49 6e 69 74 69 61 6c | 69 7a 65 20 74 68 65 20 |.Initial|ize the | |00004a50| 76 61 72 69 6f 75 73 20 | 4d 61 63 69 6e 74 6f 73 |various |Macintos| |00004a60| 68 20 6d 61 6e 61 67 65 | 72 73 2e 20 20 53 65 74 |h manage|rs. Set| |00004a70| 20 64 65 66 61 75 6c 74 | 20 75 70 70 65 72 20 6c | default| upper l| |00004a80| 69 6d 69 74 20 6f 6e 0d | 09 09 77 69 6e 64 6f 77 |imit on.|..window| |00004a90| 20 73 69 7a 69 6e 67 2e | 0d 09 2a 29 0d 0d 09 50 | sizing.|..*)...P| |00004aa0| 52 4f 43 45 44 55 52 45 | 20 53 6b 65 6c 49 6e 69 |ROCEDURE| SkelIni| |00004ab0| 74 3b 0d 0d 09 42 45 47 | 49 4e 0d 09 09 4d 61 78 |t;...BEG|IN...Max| |00004ac0| 41 70 70 6c 5a 6f 6e 65 | 3b 0d 09 09 46 6c 75 73 |ApplZone|;...Flus| |00004ad0| 68 45 76 65 6e 74 73 28 | 65 76 65 72 79 45 76 65 |hEvents(|everyEve| |00004ae0| 6e 74 2d 64 69 73 6b 4d | 61 73 6b 2c 20 30 29 3b |nt-diskM|ask, 0);| |00004af0| 0d 28 2a 09 09 49 6e 69 | 74 47 72 61 66 28 74 68 |.(*..Ini|tGraf(th| |00004b00| 65 50 6f 72 74 29 3b 09 | 2a 29 0d 28 2a 09 09 49 |ePort);.|*).(*..I| |00004b10| 6e 69 74 46 6f 6e 74 73 | 3b 09 2a 29 0d 28 2a 09 |nitFonts|;.*).(*.| |00004b20| 09 49 6e 69 74 57 69 6e | 64 6f 77 73 3b 09 2a 29 |.InitWin|dows;.*)| |00004b30| 0d 28 2a 09 09 49 6e 69 | 74 4d 65 6e 75 73 3b 09 |.(*..Ini|tMenus;.| |00004b40| 2a 29 0d 28 2a 09 09 54 | 45 49 6e 69 74 3b 09 2a |*).(*..T|EInit;.*| |00004b50| 29 0d 28 2a 09 09 49 6e | 69 74 44 69 61 6c 6f 67 |).(*..In|itDialog| |00004b60| 73 28 56 41 4c 28 50 52 | 4f 43 2c 20 4e 49 4c 29 |s(VAL(PR|OC, NIL)| |00004b70| 29 3b 09 2a 29 09 28 2a | 20 4e 6f 20 72 65 73 74 |);.*).(*| No rest| |00004b80| 61 72 74 20 70 72 6f 63 | 20 2a 29 0d 09 09 49 6e |art proc| *)...In| |00004b90| 69 74 43 75 72 73 6f 72 | 3b 0d 09 09 28 2a 0d 09 |itCursor|;...(*..| |00004ba0| 09 09 53 65 74 20 75 70 | 70 65 72 20 6c 69 6d 69 |..Set up|per limi| |00004bb0| 74 73 20 6f 66 20 77 69 | 6e 64 6f 77 20 73 69 7a |ts of wi|ndow siz| |00004bc0| 69 6e 67 20 74 6f 20 28 | 70 72 69 6d 61 72 79 29 |ing to (|primary)| |00004bd0| 20 73 63 72 65 65 6e 20 | 73 69 7a 65 2e 20 20 41 | screen |size. A| |00004be0| 6c 6c 6f 77 20 66 6f 72 | 0d 09 09 09 74 68 65 20 |llow for|....the | |00004bf0| 6d 65 6e 75 20 62 61 72 | 2e 0d 09 09 2a 29 0d 09 |menu bar|....*)..| |00004c00| 09 47 65 74 57 4d 67 72 | 50 6f 72 74 28 73 63 72 |.GetWMgr|Port(scr| |00004c10| 65 65 6e 50 6f 72 74 29 | 3b 0d 09 09 67 72 6f 77 |eenPort)|;...grow| |00004c20| 52 65 63 74 2e 72 69 67 | 68 74 20 3a 3d 20 73 63 |Rect.rig|ht := sc| |00004c30| 72 65 65 6e 50 6f 72 74 | 5e 2e 70 6f 72 74 52 65 |reenPort|^.portRe| |00004c40| 63 74 2e 72 69 67 68 74 | 3b 0d 09 09 67 72 6f 77 |ct.right|;...grow| |00004c50| 52 65 63 74 2e 62 6f 74 | 74 6f 6d 20 3a 3d 20 73 |Rect.bot|tom := s| |00004c60| 63 72 65 65 6e 50 6f 72 | 74 5e 2e 70 6f 72 74 52 |creenPor|t^.portR| |00004c70| 65 63 74 2e 62 6f 74 74 | 6f 6d 20 2d 20 6d 42 61 |ect.bott|om - mBa| |00004c80| 72 48 65 69 67 68 74 3b | 0d 09 45 4e 44 20 53 6b |rHeight;|..END Sk| |00004c90| 65 6c 49 6e 69 74 3b 0d | 0d 0d 09 28 2a 0d 09 09 |elInit;.|...(*...| |00004ca0| 4d 61 69 6e 20 6c 6f 6f | 70 2e 0d 09 09 54 61 6b |Main loo|p....Tak| |00004cb0| 65 20 63 61 72 65 20 6f | 66 20 44 41 73 20 77 69 |e care o|f DAs wi| |00004cc0| 74 68 20 53 79 73 74 65 | 6d 54 61 73 6b 2e 0d 09 |th Syste|mTask...| |00004cd0| 09 52 75 6e 20 62 61 63 | 6b 67 72 6f 75 6e 64 20 |.Run bac|kground | |00004ce0| 74 61 73 6b 20 69 66 20 | 74 68 65 72 65 20 69 73 |task if |there is| |00004cf0| 20 6f 6e 65 2e 0d 09 09 | 49 66 20 74 68 65 72 65 | one....|If there| |00004d00| 20 69 73 20 61 6e 20 65 | 76 65 6e 74 20 69 6e 20 | is an e|vent in | |00004d10| 74 68 65 20 71 75 65 75 | 65 2c 20 63 68 65 63 6b |the queu|e, check| |00004d20| 20 66 6f 72 20 61 6e 20 | 65 76 65 6e 74 20 68 6f | for an |event ho| |00004d30| 6f 6b 2e 20 20 49 66 20 | 74 68 65 72 65 20 69 73 |ok. If |there is| |00004d40| 6e 27 74 0d 09 09 6f 6e | 65 20 64 65 66 69 6e 65 |n't...on|e define| |00004d50| 64 2c 20 6f 72 20 69 66 | 20 74 68 65 72 65 20 69 |d, or if| there i| |00004d60| 73 20 62 75 74 20 69 74 | 20 72 65 74 75 72 6e 73 |s but it| returns| |00004d70| 20 66 61 6c 73 65 2c 20 | 63 61 6c 6c 20 74 68 65 | false, |call the| |00004d80| 20 67 65 6e 65 72 61 6c | 20 65 76 65 6e 74 0d 09 | general| event..| |00004d90| 09 68 61 6e 64 6c 65 72 | 2e 20 20 28 48 6f 6f 6b |.handler|. (Hook| |00004da0| 20 72 65 74 75 72 6e 73 | 20 74 72 75 65 20 69 66 | returns| true if| |00004db0| 20 54 72 61 6e 73 53 6b | 65 6c 20 73 68 6f 75 6c | TransSk|el shoul| |00004dc0| 64 20 69 67 6e 6f 72 65 | 20 74 68 65 20 65 76 65 |d ignore| the eve| |00004dd0| 6e 74 2e 29 0d 09 09 49 | 66 20 6e 6f 74 2c 20 63 |nt.)...I|f not, c| |00004de0| 61 6c 6c 20 74 68 65 20 | 22 6e 6f 2d 65 76 65 6e |all the |"no-even| |00004df0| 74 22 20 68 61 6e 64 6c | 65 72 20 66 6f 72 20 74 |t" handl|er for t| |00004e00| 68 65 20 66 72 6f 6e 74 | 20 77 69 6e 64 6f 77 20 |he front| window | |00004e10| 61 6e 64 20 66 6f 72 20 | 61 6e 79 20 6f 74 68 65 |and for |any othe| |00004e20| 72 0d 09 09 77 69 6e 64 | 6f 77 20 77 69 74 68 20 |r...wind|ow with | |00004e30| 61 6e 20 69 64 6c 65 20 | 70 72 6f 63 65 64 75 72 |an idle |procedur| |00004e40| 65 20 74 68 61 74 20 69 | 73 20 73 75 70 70 6f 73 |e that i|s suppos| |00004e50| 65 64 20 74 6f 20 61 6c | 77 61 79 73 20 72 75 6e |ed to al|ways run| |00004e60| 2e 20 20 54 68 69 73 20 | 69 73 20 64 6f 6e 65 0d |. This |is done.| |00004e70| 09 09 69 6e 20 73 75 63 | 68 20 61 20 77 61 79 20 |..in suc|h a way | |00004e80| 61 73 20 74 6f 20 62 65 | 20 73 61 66 65 20 66 6f |as to be| safe fo| |00004e90| 72 20 69 64 6c 65 20 70 | 72 6f 63 73 20 74 6f 20 |r idle p|rocs to | |00004ea0| 72 65 6d 6f 76 65 20 74 | 68 65 20 68 61 6e 64 6c |remove t|he handl| |00004eb0| 65 72 20 66 6f 72 20 74 | 68 65 69 72 0d 09 09 6f |er for t|heir...o| |00004ec0| 77 6e 20 77 69 6e 64 6f | 77 20 69 66 20 74 68 65 |wn windo|w if the| |00004ed0| 79 20 77 61 6e 74 20 28 | 75 6e 6c 69 6b 65 6c 79 |y want (|unlikely| |00004ee0| 2c 20 62 75 74 c9 29 2e | 20 20 54 68 69 73 20 6c |, but.).| This l| |00004ef0| 6f 6f 70 20 64 6f 65 73 | 6e 27 74 20 63 68 65 63 |oop does|n't chec| |00004f00| 6b 20 77 68 65 74 68 65 | 72 0d 09 09 74 68 65 20 |k whethe|r...the | |00004f10| 77 69 6e 64 6f 77 20 69 | 73 20 72 65 61 6c 6c 79 |window i|s really| |00004f20| 20 61 20 64 69 61 6c 6f | 67 20 77 69 6e 64 6f 77 | a dialo|g window| |00004f30| 20 6f 72 20 6e 6f 74 2c | 20 62 75 74 20 69 74 20 | or not,| but it | |00004f40| 64 6f 65 73 6e 27 74 20 | 68 61 76 65 20 74 6f 2c |doesn't |have to,| |00004f50| 20 73 69 6e 63 65 0d 09 | 09 73 75 63 68 20 74 68 | since..|.such th| |00004f60| 69 6e 67 73 20 61 6c 77 | 61 79 73 20 68 61 76 65 |ings alw|ays have| |00004f70| 20 61 20 6e 69 6c 20 69 | 64 6c 65 20 70 72 6f 63 | a nil i|dle proc| |00004f80| 2e 0d 0d 09 09 64 6f 6e | 65 46 6c 61 67 20 69 73 |.....don|eFlag is| |00004f90| 20 72 65 73 65 74 20 75 | 70 6f 6e 20 65 78 69 74 | reset u|pon exit| |00004fa0| 20 69 6e 20 63 61 73 65 | 20 74 68 65 20 68 6f 73 | in case| the hos| |00004fb0| 74 20 77 69 73 68 65 73 | 20 74 6f 20 63 61 6c 6c |t wishes| to call| |00004fc0| 20 53 6b 65 6c 4d 61 69 | 6e 20 61 67 61 69 6e 0d | SkelMai|n again.| |00004fd0| 09 09 6f 72 20 69 73 20 | 65 78 65 63 75 74 69 6e |..or is |executin| |00004fe0| 67 20 69 74 20 72 65 63 | 75 72 73 69 76 65 6c 79 |g it rec|ursively| |00004ff0| 2e 0d 09 09 0d 09 09 4e | 75 6c 6c 20 65 76 65 6e |.......N|ull even| |00005000| 74 73 20 61 72 65 20 6c | 6f 6f 6b 65 64 20 61 74 |ts are l|ooked at| |00005010| 20 28 69 6e 20 53 6b 65 | 6c 4d 61 69 6e 29 20 61 | (in Ske|lMain) a| |00005020| 6e 64 20 70 61 73 73 65 | 64 20 74 6f 20 74 68 65 |nd passe|d to the| |00005030| 20 65 76 65 6e 74 20 68 | 61 6e 64 6c 65 72 2e 0d | event h|andler..| |00005040| 09 09 54 68 69 73 20 69 | 73 20 6e 65 63 65 73 73 |..This i|s necess| |00005050| 61 72 79 20 74 6f 20 65 | 6e 73 75 72 65 20 44 69 |ary to e|nsure Di| |00005060| 61 6c 6f 67 53 65 6c 65 | 63 74 20 67 65 74 73 20 |alogSele|ct gets | |00005070| 63 61 6c 6c 65 64 20 72 | 65 70 65 61 74 65 64 6c |called r|epeatedl| |00005080| 79 2c 20 6f 72 20 74 68 | 65 0d 09 09 63 61 72 65 |y, or th|e...care| |00005090| 74 20 77 6f 6e 27 74 20 | 62 6c 69 6e 6b 20 69 66 |t won't |blink if| |000050a0| 20 61 20 64 69 61 6c 6f | 67 20 68 61 73 20 61 6e | a dialo|g has an| |000050b0| 79 20 65 64 69 74 74 65 | 78 74 20 69 74 65 6d 73 |y editte|xt items| |000050c0| 2e 0d 09 09 0d 09 09 49 | 66 20 61 6e 20 65 76 65 |.......I|f an eve| |000050d0| 6e 74 2d 69 6e 73 70 65 | 63 74 69 6e 67 20 68 6f |nt-inspe|cting ho| |000050e0| 6f 6b 20 69 73 20 69 6e | 73 74 61 6c 6c 65 64 2c |ok is in|stalled,| |000050f0| 20 69 74 20 64 6f 65 73 | 6e 27 74 20 72 65 63 65 | it does|n't rece| |00005100| 69 76 65 20 6e 75 6c 6c | 20 65 76 65 6e 74 73 2e |ive null| events.| |00005110| 0d 09 2a 29 0d 0d 09 50 | 52 4f 43 45 44 55 52 45 |..*)...P|ROCEDURE| |00005120| 20 53 6b 65 6c 4d 61 69 | 6e 3b 0d 0d 09 09 56 41 | SkelMai|n;....VA| |00005130| 52 0d 09 09 09 74 68 65 | 45 76 65 6e 74 3a 20 09 |R....the|Event: .| |00005140| 45 76 65 6e 74 52 65 63 | 6f 72 64 3b 0d 09 09 09 |EventRec|ord;....| |00005150| 77 68 2c 20 77 68 32 3a | 09 09 57 48 61 6e 64 6c |wh, wh2:|..WHandl| |00005160| 65 72 48 64 6c 3b 0d 09 | 09 09 77 3a 09 09 09 09 |erHdl;..|..w:....| |00005170| 09 57 69 6e 64 6f 77 50 | 74 72 3b 0d 09 09 09 68 |.WindowP|tr;....h| |00005180| 61 76 65 45 76 65 6e 74 | 3a 09 42 4f 4f 4c 45 41 |aveEvent|:.BOOLEA| |00005190| 4e 3b 0d 0d 09 42 45 47 | 49 4e 0d 09 09 57 48 49 |N;...BEG|IN...WHI| |000051a0| 4c 45 20 4e 4f 54 20 64 | 6f 6e 65 46 6c 61 67 20 |LE NOT d|oneFlag | |000051b0| 44 4f 0d 09 09 09 53 79 | 73 74 65 6d 54 61 73 6b |DO....Sy|stemTask| |000051c0| 3b 0d 09 09 09 49 46 20 | 56 41 4c 28 41 44 44 52 |;....IF |VAL(ADDR| |000051d0| 45 53 53 2c 20 70 42 6b | 67 6e 64 29 20 23 20 56 |ESS, pBk|gnd) # V| |000051e0| 41 4c 28 41 44 44 52 45 | 53 53 2c 20 4e 49 4c 29 |AL(ADDRE|SS, NIL)| |000051f0| 20 54 48 45 4e 20 70 42 | 6b 67 6e 64 3b 20 45 4e | THEN pB|kgnd; EN| |00005200| 44 3b 0d 09 09 09 68 61 | 76 65 45 76 65 6e 74 20 |D;....ha|veEvent | |00005210| 3a 3d 20 47 65 74 4e 65 | 78 74 45 76 65 6e 74 28 |:= GetNe|xtEvent(| |00005220| 65 76 65 72 79 45 76 65 | 6e 74 2c 20 74 68 65 45 |everyEve|nt, theE| |00005230| 76 65 6e 74 29 3b 0d 09 | 09 09 49 46 20 28 56 41 |vent);..|..IF (VA| |00005240| 4c 28 41 44 44 52 45 53 | 53 2c 70 45 76 65 6e 74 |L(ADDRES|S,pEvent| |00005250| 29 20 3d 20 56 41 4c 28 | 41 44 44 52 45 53 53 2c |) = VAL(|ADDRESS,| |00005260| 4e 49 4c 29 29 20 4f 52 | 0d 09 09 09 09 20 28 68 |NIL)) OR|..... (h| |00005270| 61 76 65 45 76 65 6e 74 | 20 26 20 4e 4f 54 20 70 |aveEvent| & NOT p| |00005280| 45 76 65 6e 74 28 74 68 | 65 45 76 65 6e 74 29 29 |Event(th|eEvent))| |00005290| 20 54 48 45 4e 20 44 6f | 45 76 65 6e 74 28 74 68 | THEN Do|Event(th| |000052a0| 65 45 76 65 6e 74 29 3b | 0d 09 09 09 45 4e 44 3b |eEvent);|....END;| |000052b0| 0d 09 09 09 49 46 20 4e | 4f 54 20 68 61 76 65 45 |....IF N|OT haveE| |000052c0| 76 65 6e 74 20 54 48 45 | 4e 0d 09 09 09 09 77 68 |vent THE|N.....wh| |000052d0| 20 3a 3d 20 77 68 4c 69 | 73 74 3b 0d 09 09 09 09 | := whLi|st;.....| |000052e0| 57 48 49 4c 45 20 77 68 | 20 23 20 4e 49 4c 20 44 |WHILE wh| # NIL D| |000052f0| 4f 0d 09 09 09 09 09 77 | 68 32 20 3a 3d 20 77 68 |O......w|h2 := wh| |00005300| 5e 5e 2e 77 68 4e 65 78 | 74 3b 0d 09 09 09 09 09 |^^.whNex|t;......| |00005310| 77 20 3a 3d 20 77 68 5e | 5e 2e 77 68 57 69 6e 64 |w := wh^|^.whWind| |00005320| 3b 0d 09 09 09 09 09 49 | 46 20 28 77 20 3d 20 46 |;......I|F (w = F| |00005330| 72 6f 6e 74 57 69 6e 64 | 6f 77 28 29 29 20 4f 52 |rontWind|ow()) OR| |00005340| 20 4e 4f 54 20 77 68 5e | 5e 2e 77 68 46 72 6f 6e | NOT wh^|^.whFron| |00005350| 74 4f 6e 6c 79 20 54 48 | 45 4e 0d 09 09 09 09 09 |tOnly TH|EN......| |00005360| 09 53 79 73 74 65 6d 54 | 61 73 6b 3b 0d 09 09 09 |.SystemT|ask;....| |00005370| 09 09 09 44 6f 49 64 6c | 65 28 77 68 29 3b 0d 09 |...DoIdl|e(wh);..| |00005380| 09 09 09 09 45 4e 44 3b | 0d 09 09 09 09 09 77 68 |....END;|......wh| |00005390| 20 3a 3d 20 77 68 32 3b | 0d 09 09 09 09 45 4e 44 | := wh2;|.....END| |000053a0| 3b 0d 09 09 09 45 4e 44 | 0d 09 09 45 4e 44 3b 0d |;....END|...END;.| |000053b0| 09 09 64 6f 6e 65 46 6c | 61 67 20 3a 3d 20 46 41 |..doneFl|ag := FA| |000053c0| 4c 53 45 3b 0d 09 45 4e | 44 20 53 6b 65 6c 4d 61 |LSE;..EN|D SkelMa| |000053d0| 69 6e 3b 0d 0d 0d 09 28 | 2a 0d 09 09 54 65 6c 6c |in;....(|*...Tell| |000053e0| 20 53 6b 65 6c 4d 61 69 | 6e 20 74 6f 20 73 74 6f | SkelMai|n to sto| |000053f0| 70 0d 09 2a 29 0d 0d 09 | 50 52 4f 43 45 44 55 52 |p..*)...|PROCEDUR| |00005400| 45 20 53 6b 65 6c 57 68 | 6f 61 3b 0d 0d 09 42 45 |E SkelWh|oa;...BE| |00005410| 47 49 4e 0d 09 09 64 6f | 6e 65 46 6c 61 67 20 3a |GIN...do|neFlag :| |00005420| 3d 20 54 52 55 45 3b 0d | 09 45 4e 44 20 53 6b 65 |= TRUE;.|.END Ske| |00005430| 6c 57 68 6f 61 3b 0d 0d | 09 28 2a 0d 09 09 43 6c |lWhoa;..|.(*...Cl| |00005440| 6f 62 62 65 72 20 61 6c | 6c 20 6d 65 6e 75 20 61 |obber al|l menu a| |00005450| 6e 64 20 77 69 6e 64 6f | 77 20 68 61 6e 64 6c 65 |nd windo|w handle| |00005460| 72 73 2e 0d 09 2a 29 0d | 09 50 52 4f 43 45 44 55 |rs...*).|.PROCEDU| |00005470| 52 45 20 53 6b 65 6c 43 | 6c 6f 62 62 65 72 3b 0d |RE SkelC|lobber;.| |00005480| 0d 09 42 45 47 49 4e 0d | 09 09 57 48 49 4c 45 20 |..BEGIN.|..WHILE | |00005490| 77 68 4c 69 73 74 20 23 | 20 4e 49 4c 20 44 4f 20 |whList #| NIL DO | |000054a0| 53 6b 65 6c 52 6d 76 65 | 57 69 6e 64 28 77 68 4c |SkelRmve|Wind(whL| |000054b0| 69 73 74 5e 5e 2e 77 68 | 57 69 6e 64 29 3b 20 45 |ist^^.wh|Wind); E| |000054c0| 4e 44 3b 0d 09 09 57 48 | 49 4c 45 20 6d 68 4c 69 |ND;...WH|ILE mhLi| |000054d0| 73 74 20 23 20 4e 49 4c | 20 44 4f 20 53 6b 65 6c |st # NIL| DO Skel| |000054e0| 52 6d 76 65 4d 65 6e 75 | 28 47 65 74 4d 48 61 6e |RmveMenu|(GetMHan| |000054f0| 64 6c 65 28 6d 68 4c 69 | 73 74 5e 5e 2e 6d 68 49 |dle(mhLi|st^^.mhI| |00005500| 44 29 29 3b 20 45 4e 44 | 3b 0d 09 45 4e 44 20 53 |D)); END|;..END S| |00005510| 6b 65 6c 43 6c 6f 62 62 | 65 72 3b 0d 0d 0d 09 28 |kelClobb|er;....(| |00005520| 2a d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |*.......|........| |00005530| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00005540| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00005550| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00005560| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 0d 09 09 09 09 |........|........| |00005570| 09 09 09 09 09 4d 65 6e | 75 20 48 61 6e 64 6c 65 |.....Men|u Handle| |00005580| 72 20 49 6e 74 65 72 66 | 61 63 65 20 28 50 75 62 |r Interf|ace (Pub| |00005590| 6c 69 63 29 20 52 6f 75 | 74 69 6e 65 73 0d 09 d1 |lic) Rou|tines...| |000055a0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000055b0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000055c0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000055d0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000055e0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 2a 29 0d 0d 09 28 2a |........|.*)...(*| |000055f0| 0d 09 09 49 6e 73 74 61 | 6c 6c 20 68 61 6e 64 6c |...Insta|ll handl| |00005600| 65 72 20 66 6f 72 20 61 | 20 6d 65 6e 75 2e 20 20 |er for a| menu. | |00005610| 52 65 6d 6f 76 65 20 61 | 6e 79 20 70 72 65 76 69 |Remove a|ny previ| |00005620| 6f 75 73 20 68 61 6e 64 | 6c 65 72 20 66 6f 72 20 |ous hand|ler for | |00005630| 69 74 2e 20 20 50 61 73 | 73 20 74 68 65 0d 09 09 |it. Pas|s the...| |00005640| 66 6f 6c 6c 6f 77 69 6e | 67 20 70 61 72 61 6d 65 |followin|g parame| |00005650| 74 65 72 73 2e 0d 0d 09 | 09 74 68 65 4d 65 6e 75 |ters....|.theMenu| |00005660| 09 09 09 48 61 6e 64 6c | 65 20 74 6f 20 74 68 65 |...Handl|e to the| |00005670| 20 73 75 62 6a 65 63 74 | 20 6d 65 6e 75 2e 20 20 | subject| menu. | |00005680| 4d 75 73 74 20 62 65 20 | 63 72 65 61 74 65 64 20 |Must be |created | |00005690| 62 79 20 68 6f 73 74 2e | 0d 09 09 70 53 65 6c 65 |by host.|...pSele| |000056a0| 63 74 09 09 09 50 72 6f | 63 20 74 68 61 74 20 68 |ct...Pro|c that h| |000056b0| 61 6e 64 6c 65 73 20 73 | 65 6c 65 63 74 69 6f 6e |andles s|election| |000056c0| 20 6f 66 20 69 74 65 6d | 73 20 66 72 6f 6d 20 74 | of item|s from t| |000056d0| 68 65 20 6d 65 6e 75 2e | 20 20 49 66 20 74 68 69 |he menu.| If thi| |000056e0| 73 0d 09 09 09 09 09 09 | 09 09 69 73 20 4e 49 4c |s.......|..is NIL| |000056f0| 2c 20 74 68 65 20 6d 65 | 6e 75 20 69 73 20 69 6e |, the me|nu is in| |00005700| 73 74 61 6c 6c 65 64 2c | 20 62 75 74 20 6e 6f 74 |stalled,| but not| |00005710| 68 69 6e 67 20 68 61 70 | 70 65 6e 73 20 77 68 65 |hing hap|pens whe| |00005720| 6e 20 69 74 65 6d 73 0d | 09 09 09 09 09 09 09 09 |n items.|........| |00005730| 61 72 65 20 73 65 6c 65 | 63 74 65 64 20 66 72 6f |are sele|cted fro| |00005740| 6d 20 69 74 2e 0d 09 09 | 70 43 6c 6f 62 62 65 72 |m it....|pClobber| |00005750| 09 09 50 72 6f 63 20 66 | 6f 72 20 64 69 73 70 6f |..Proc f|or dispo| |00005760| 73 61 6c 20 6f 66 20 68 | 61 6e 64 6c 65 72 27 73 |sal of h|andler's| |00005770| 20 64 61 74 61 20 73 74 | 72 75 63 74 75 72 65 73 | data st|ructures| |00005780| 2e 20 20 55 73 75 61 6c | 6c 79 20 4e 49 4c 0d 09 |. Usual|ly NIL..| |00005790| 09 09 09 09 09 09 09 66 | 6f 72 20 6d 65 6e 75 73 |.......f|or menus| |000057a0| 20 74 68 61 74 20 72 65 | 6d 61 69 6e 20 69 6e 20 | that re|main in | |000057b0| 6d 65 6e 75 20 62 61 72 | 20 75 6e 74 69 6c 20 70 |menu bar| until p| |000057c0| 72 6f 67 72 61 6d 20 74 | 65 72 6d 69 6e 61 74 69 |rogram t|erminati| |000057d0| 6f 6e 2e 0d 0d 09 09 54 | 68 65 20 6d 65 6e 75 20 |on.....T|he menu | |000057e0| 69 73 20 69 6e 73 74 61 | 6c 6c 65 64 20 61 6e 64 |is insta|lled and| |000057f0| 20 64 72 61 77 6e 20 69 | 6e 20 74 68 65 20 6d 65 | drawn i|n the me| |00005800| 6e 75 20 62 61 72 2e 0d | 09 2a 29 0d 0d 09 50 52 |nu bar..|.*)...PR| |00005810| 4f 43 45 44 55 52 45 20 | 53 6b 65 6c 4d 65 6e 75 |OCEDURE |SkelMenu| |00005820| 28 09 74 68 65 4d 65 6e | 75 3a 20 4d 65 6e 75 48 |(.theMen|u: MenuH| |00005830| 61 6e 64 6c 65 3b 0d 09 | 09 09 09 09 09 09 09 09 |andle;..|........| |00005840| 09 09 70 53 65 6c 65 63 | 74 3a 20 4d 53 65 6c 65 |..pSelec|t: MSele| |00005850| 63 74 50 72 6f 63 3b 0d | 09 09 09 09 09 09 09 09 |ctProc;.|........| |00005860| 09 09 09 70 43 6c 6f 62 | 62 65 72 3a 20 4d 43 6c |...pClob|ber: MCl| |00005870| 6f 62 62 65 72 50 72 6f | 63 29 3b 0d 0d 09 09 56 |obberPro|c);....V| |00005880| 41 52 0d 09 09 09 6d 68 | 3a 09 4d 48 61 6e 64 6c |AR....mh|:.MHandl| |00005890| 65 72 48 64 6c 3b 0d 0d | 09 42 45 47 49 4e 0d 09 |erHdl;..|.BEGIN..| |000058a0| 09 6d 68 43 6c 6f 62 4f | 6e 52 6d 76 65 20 3a 3d |.mhClobO|nRmve :=| |000058b0| 20 46 41 4c 53 45 3b 0d | 09 09 53 6b 65 6c 52 6d | FALSE;.|..SkelRm| |000058c0| 76 65 4d 65 6e 75 28 74 | 68 65 4d 65 6e 75 29 3b |veMenu(t|heMenu);| |000058d0| 09 09 09 09 28 2a 20 49 | 6e 20 63 61 73 65 20 6f |....(* I|n case o| |000058e0| 6e 65 27 73 20 61 6c 72 | 65 61 64 79 20 74 68 65 |ne's alr|eady the| |000058f0| 72 65 20 2a 29 0d 09 09 | 6d 68 43 6c 6f 62 4f 6e |re *)...|mhClobOn| |00005900| 52 6d 76 65 20 3a 3d 20 | 54 52 55 45 3b 0d 0d 09 |Rmve := |TRUE;...| |00005910| 09 6d 68 20 3a 3d 20 56 | 41 4c 28 4d 48 61 6e 64 |.mh := V|AL(MHand| |00005920| 6c 65 72 48 64 6c 2c 20 | 4e 65 77 48 61 6e 64 6c |lerHdl, |NewHandl| |00005930| 65 28 54 53 49 5a 45 28 | 4d 48 61 6e 64 6c 65 72 |e(TSIZE(|MHandler| |00005940| 29 29 29 3b 0d 09 09 6d | 68 5e 5e 2e 6d 68 4e 65 |)));...m|h^^.mhNe| |00005950| 78 74 20 3a 3d 20 6d 68 | 4c 69 73 74 3b 0d 09 09 |xt := mh|List;...| |00005960| 6d 68 4c 69 73 74 20 3a | 3d 20 6d 68 3b 0d 09 09 |mhList :|= mh;...| |00005970| 57 49 54 48 20 6d 68 5e | 5e 20 44 4f 0d 09 09 09 |WITH mh^|^ DO....| |00005980| 6d 68 49 44 20 3a 3d 20 | 74 68 65 4d 65 6e 75 5e |mhID := |theMenu^| |00005990| 5e 2e 6d 65 6e 75 49 44 | 3b 09 09 28 2a 20 47 65 |^.menuID|;..(* Ge| |000059a0| 74 20 74 68 65 20 6d 65 | 6e 75 20 69 64 20 6e 75 |t the me|nu id nu| |000059b0| 6d 62 65 72 20 2a 29 0d | 09 09 09 6d 68 53 65 6c |mber *).|...mhSel| |000059c0| 65 63 74 20 3a 3d 20 70 | 53 65 6c 65 63 74 3b 09 |ect := p|Select;.| |000059d0| 09 09 09 28 2a 20 49 6e | 73 74 61 6c 6c 20 73 65 |...(* In|stall se| |000059e0| 6c 65 63 74 69 6f 6e 20 | 68 61 6e 64 6c 65 72 20 |lection |handler | |000059f0| 2a 29 0d 09 09 09 6d 68 | 43 6c 6f 62 62 65 72 20 |*)....mh|Clobber | |00005a00| 3a 3d 20 70 43 6c 6f 62 | 62 65 72 3b 09 09 09 28 |:= pClob|ber;...(| |00005a10| 2a 20 49 6e 73 74 61 6c | 6c 20 64 69 73 70 6f 73 |* Instal|l dispos| |00005a20| 61 6c 20 68 61 6e 64 6c | 65 72 20 2a 29 0d 09 09 |al handl|er *)...| |00005a30| 45 4e 44 3b 0d 09 09 49 | 6e 73 65 72 74 4d 65 6e |END;...I|nsertMen| |00005a40| 75 28 74 68 65 4d 65 6e | 75 2c 20 30 29 3b 09 09 |u(theMen|u, 0);..| |00005a50| 09 09 28 2a 20 50 75 74 | 20 6d 65 6e 75 20 61 74 |..(* Put| menu at| |00005a60| 20 72 69 67 68 74 20 65 | 6e 64 20 6f 66 20 6d 65 | right e|nd of me| |00005a70| 6e 75 20 62 61 72 20 2a | 29 0d 09 09 44 72 61 77 |nu bar *|)...Draw| |00005a80| 4d 65 6e 75 42 61 72 3b | 0d 09 45 4e 44 20 53 6b |MenuBar;|..END Sk| |00005a90| 65 6c 4d 65 6e 75 3b 0d | 0d 0d 09 28 2a 0d 09 09 |elMenu;.|...(*...| |00005aa0| 52 65 6d 6f 76 65 20 61 | 20 6d 65 6e 75 20 68 61 |Remove a| menu ha| |00005ab0| 6e 64 6c 65 72 2e 20 20 | 54 68 69 73 20 63 61 6c |ndler. |This cal| |00005ac0| 6c 73 20 74 68 65 20 68 | 61 6e 64 6c 65 72 27 73 |ls the h|andler's| |00005ad0| 20 64 69 73 70 6f 73 61 | 6c 20 72 6f 75 74 69 6e | disposa|l routin| |00005ae0| 65 20 61 6e 64 20 74 68 | 65 6e 0d 09 09 74 61 6b |e and th|en...tak| |00005af0| 65 73 20 74 68 65 20 68 | 61 6e 64 6c 65 72 20 6f |es the h|andler o| |00005b00| 75 74 20 6f 66 20 74 68 | 65 20 68 61 6e 64 6c 65 |ut of th|e handle| |00005b10| 72 20 6c 69 73 74 20 61 | 6e 64 20 64 69 73 70 6f |r list a|nd dispo| |00005b20| 73 65 73 20 6f 66 20 69 | 74 2e 0d 0d 09 09 4e 6f |ses of i|t.....No| |00005b30| 74 20 74 68 61 74 20 74 | 68 65 20 6d 65 6e 75 20 |t that t|he menu | |00005b40| 4d 55 53 54 20 62 65 20 | 64 65 6c 65 74 65 64 20 |MUST be |deleted | |00005b50| 66 72 6f 6d 20 74 68 65 | 20 6d 65 6e 75 20 62 61 |from the| menu ba| |00005b60| 72 20 62 65 66 6f 72 65 | 20 63 61 6c 6c 69 6e 67 |r before| calling| |00005b70| 20 74 68 65 0d 09 09 63 | 6c 6f 62 62 65 72 20 70 | the...c|lobber p| |00005b80| 72 6f 63 2c 20 62 65 63 | 61 75 73 65 20 74 68 65 |roc, bec|ause the| |00005b90| 20 6d 65 6e 75 20 62 61 | 72 20 77 69 6c 6c 20 65 | menu ba|r will e| |00005ba0| 6e 64 20 75 70 20 66 69 | 6c 6c 65 64 20 77 69 74 |nd up fi|lled wit| |00005bb0| 68 20 67 61 72 62 61 67 | 65 20 69 66 20 74 68 65 |h garbag|e if the| |00005bc0| 0d 09 09 6d 65 6e 75 20 | 77 61 73 20 61 6c 6c 6f |...menu |was allo| |00005bd0| 63 61 74 65 64 20 77 69 | 74 68 20 4e 65 77 4d 65 |cated wi|th NewMe| |00005be0| 6e 75 20 28 53 65 65 20 | 74 68 65 20 64 69 73 63 |nu (See |the disc| |00005bf0| 75 73 73 69 6f 6e 20 6f | 66 20 44 69 73 70 6f 73 |ussion o|f Dispos| |00005c00| 65 4d 65 6e 75 20 69 6e | 20 74 68 65 0d 09 09 4d |eMenu in| the...M| |00005c10| 65 6e 75 20 4d 61 6e 61 | 67 65 72 20 63 68 61 70 |enu Mana|ger chap| |00005c20| 74 65 72 20 6f 66 20 49 | 6e 73 69 64 65 20 4d 61 |ter of I|nside Ma| |00005c30| 63 69 6e 74 6f 73 68 20 | 2d 20 56 6f 6c 2e 20 49 |cintosh |- Vol. I| |00005c40| 2c 20 43 68 2e 20 31 31 | 29 0d 09 2a 29 0d 0d 09 |, Ch. 11|)..*)...| |00005c50| 50 52 4f 43 45 44 55 52 | 45 20 53 6b 65 6c 52 6d |PROCEDUR|E SkelRm| |00005c60| 76 65 4d 65 6e 75 28 74 | 68 65 4d 65 6e 75 3a 20 |veMenu(t|heMenu: | |00005c70| 4d 65 6e 75 48 61 6e 64 | 6c 65 29 3b 0d 0d 09 09 |MenuHand|le);....| |00005c80| 56 41 52 0d 09 09 09 6d | 49 44 3a 09 09 49 4e 54 |VAR....m|ID:..INT| |00005c90| 45 47 45 52 3b 0d 09 09 | 09 68 2c 20 68 32 3a 09 |EGER;...|.h, h2:.| |00005ca0| 4d 48 61 6e 64 6c 65 72 | 48 64 6c 3b 0d 09 09 09 |MHandler|Hdl;....| |00005cb0| 70 3a 09 09 09 4d 43 6c | 6f 62 62 65 72 50 72 6f |p:...MCl|obberPro| |00005cc0| 63 3b 0d 0d 09 42 45 47 | 49 4e 0d 09 09 6d 49 44 |c;...BEG|IN...mID| |00005cd0| 20 3a 3d 20 74 68 65 4d | 65 6e 75 5e 5e 2e 6d 65 | := theM|enu^^.me| |00005ce0| 6e 75 49 44 3b 0d 09 09 | 49 46 20 6d 68 4c 69 73 |nuID;...|IF mhLis| |00005cf0| 74 20 23 20 4e 49 4c 20 | 54 48 45 4e 0d 09 09 09 |t # NIL |THEN....| |00005d00| 49 46 20 6d 68 4c 69 73 | 74 5e 5e 2e 6d 68 49 44 |IF mhLis|t^^.mhID| |00005d10| 20 3d 20 6d 49 44 20 54 | 48 45 4e 09 09 28 2a 20 | = mID T|HEN..(* | |00005d20| 49 73 20 69 74 20 74 68 | 65 20 66 69 72 73 74 20 |Is it th|e first | |00005d30| 65 6c 65 6d 65 6e 74 3f | 20 2a 29 0d 09 09 09 09 |element?| *).....| |00005d40| 68 32 20 3a 3d 20 6d 68 | 4c 69 73 74 3b 0d 09 09 |h2 := mh|List;...| |00005d50| 09 09 6d 68 4c 69 73 74 | 20 3a 3d 20 6d 68 4c 69 |..mhList| := mhLi| |00005d60| 73 74 5e 5e 2e 6d 68 4e | 65 78 74 3b 0d 09 09 09 |st^^.mhN|ext;....| |00005d70| 45 4c 53 45 0d 09 09 09 | 09 68 20 3a 3d 20 6d 68 |ELSE....|.h := mh| |00005d80| 4c 69 73 74 3b 0d 09 09 | 09 09 4c 4f 4f 50 0d 09 |List;...|..LOOP..| |00005d90| 09 09 09 09 49 46 20 68 | 20 3d 20 4e 49 4c 20 54 |....IF h| = NIL T| |00005da0| 48 45 4e 20 45 58 49 54 | 3b 20 45 4e 44 3b 0d 09 |HEN EXIT|; END;..| |00005db0| 09 09 09 09 68 32 20 3a | 3d 20 68 5e 5e 2e 6d 68 |....h2 :|= h^^.mh| |00005dc0| 4e 65 78 74 3b 0d 09 09 | 09 09 09 49 46 20 68 32 |Next;...|...IF h2| |00005dd0| 20 3d 20 4e 49 4c 20 54 | 48 45 4e 20 52 45 54 55 | = NIL T|HEN RETU| |00005de0| 52 4e 3b 20 45 4e 44 3b | 0d 09 09 09 09 09 49 46 |RN; END;|......IF| |00005df0| 20 68 32 5e 5e 2e 6d 68 | 49 44 20 3d 20 6d 49 44 | h2^^.mh|ID = mID| |00005e00| 20 54 48 45 4e 09 09 28 | 2a 20 46 6f 75 6e 64 20 | THEN..(|* Found | |00005e10| 69 74 20 2a 29 0d 09 09 | 09 09 09 09 68 5e 5e 2e |it *)...|....h^^.| |00005e20| 6d 68 4e 65 78 74 20 3a | 3d 20 68 32 5e 5e 2e 6d |mhNext :|= h2^^.m| |00005e30| 68 4e 65 78 74 3b 0d 09 | 09 09 09 09 09 45 58 49 |hNext;..|.....EXI| |00005e40| 54 3b 0d 09 09 09 09 09 | 45 4e 44 3b 0d 09 09 09 |T;......|END;....| |00005e50| 09 09 68 20 3a 3d 20 68 | 32 3b 0d 09 09 09 09 45 |..h := h|2;.....E| |00005e60| 4e 44 3b 0d 09 09 09 45 | 4e 44 3b 0d 09 09 09 44 |ND;....E|ND;....D| |00005e70| 65 6c 65 74 65 4d 65 6e | 75 28 6d 49 44 29 3b 0d |eleteMen|u(mID);.| |00005e80| 09 09 09 44 72 61 77 4d | 65 6e 75 42 61 72 3b 0d |...DrawM|enuBar;.| |00005e90| 09 09 09 49 46 20 6d 68 | 43 6c 6f 62 4f 6e 52 6d |...IF mh|ClobOnRm| |00005ea0| 76 65 20 26 20 28 56 41 | 4c 28 41 44 44 52 45 53 |ve & (VA|L(ADDRES| |00005eb0| 53 2c 68 32 5e 5e 2e 6d | 68 43 6c 6f 62 62 65 72 |S,h2^^.m|hClobber| |00005ec0| 29 20 23 20 56 41 4c 28 | 41 44 44 52 45 53 53 2c |) # VAL(|ADDRESS,| |00005ed0| 4e 49 4c 29 29 20 54 48 | 45 4e 0d 09 09 09 09 70 |NIL)) TH|EN.....p| |00005ee0| 20 3a 3d 20 68 32 5e 5e | 2e 6d 68 43 6c 6f 62 62 | := h2^^|.mhClobb| |00005ef0| 65 72 3b 0d 09 09 09 09 | 70 28 74 68 65 4d 65 6e |er;.....|p(theMen| |00005f00| 75 29 3b 0d 09 09 09 45 | 4e 44 3b 0d 09 09 09 44 |u);....E|ND;....D| |00005f10| 69 73 70 6f 73 48 61 6e | 64 6c 65 28 68 32 29 3b |isposHan|dle(h2);| |00005f20| 0d 09 09 45 4e 44 3b 0d | 09 45 4e 44 20 53 6b 65 |...END;.|.END Ske| |00005f30| 6c 52 6d 76 65 4d 65 6e | 75 3b 0d 0d 0d 09 28 2a |lRmveMen|u;....(*| |00005f40| 0d 09 09 49 6e 73 74 61 | 6c 6c 20 61 20 68 61 6e |...Insta|ll a han| |00005f50| 64 6c 65 72 20 66 6f 72 | 20 74 68 65 20 41 70 70 |dler for| the App| |00005f60| 6c 65 20 4d 65 6e 75 2e | 0d 0d 09 09 53 6b 65 6c |le Menu.|....Skel| |00005f70| 41 70 70 6c 65 20 69 73 | 20 63 61 6c 6c 65 64 20 |Apple is| called | |00005f80| 69 66 20 54 72 61 6e 73 | 53 6b 65 6c 20 69 73 20 |if Trans|Skel is | |00005f90| 73 75 70 70 6f 73 65 64 | 20 74 6f 20 68 61 6e 64 |supposed| to hand| |00005fa0| 6c 65 20 74 68 65 20 41 | 70 70 6c 65 20 6d 65 6e |le the A|pple men| |00005fb0| 75 0d 09 09 69 74 73 65 | 6c 66 2e 20 20 54 68 65 |u...itse|lf. The| |00005fc0| 20 74 69 74 6c 65 20 69 | 73 20 74 68 65 20 74 69 | title i|s the ti| |00005fd0| 74 6c 65 20 6f 66 20 74 | 68 65 20 66 69 72 73 74 |tle of t|he first| |00005fe0| 20 69 74 65 6d 2e 20 20 | 49 66 20 4e 49 4c 2c 20 | item. |If NIL, | |00005ff0| 74 68 65 6e 20 6f 6e 6c | 79 20 44 41 73 0d 09 09 |then onl|y DAs...| |00006000| 61 72 65 20 70 75 74 20 | 69 6e 74 6f 20 74 68 65 |are put |into the| |00006010| 20 6d 65 6e 75 2e 20 20 | 49 66 20 6e 6f 74 20 4e | menu. |If not N| |00006020| 49 4c 2c 20 74 68 65 6e | 20 74 68 65 20 74 69 74 |IL, then| the tit| |00006030| 6c 65 20 69 73 20 65 6e | 74 65 72 65 64 20 61 73 |le is en|tered as| |00006040| 20 74 68 65 20 31 73 74 | 0d 09 09 69 74 65 6d 2c | the 1st|...item,| |00006050| 20 66 6f 6c 6c 6f 77 65 | 64 20 62 79 20 61 20 67 | followe|d by a g| |00006060| 72 65 79 20 6c 69 6e 65 | 2c 20 74 68 65 6e 20 74 |rey line|, then t| |00006070| 68 65 20 64 65 73 6b 20 | 61 63 63 65 73 73 6f 72 |he desk |accessor| |00006080| 69 65 73 2e 0d 09 2a 29 | 0d 0d 09 50 52 4f 43 45 |ies...*)|...PROCE| |00006090| 44 55 52 45 20 53 6b 65 | 6c 41 70 70 6c 65 28 61 |DURE Ske|lApple(a| |000060a0| 62 6f 75 74 54 69 74 6c | 65 3a 20 41 52 52 41 59 |boutTitl|e: ARRAY| |000060b0| 20 4f 46 20 43 48 41 52 | 3b 20 61 62 6f 75 74 50 | OF CHAR|; aboutP| |000060c0| 72 6f 63 3a 20 50 52 4f | 43 29 3b 0d 0d 09 09 56 |roc: PRO|C);....V| |000060d0| 41 52 0d 09 09 09 61 70 | 70 6c 65 54 69 74 6c 65 |AR....ap|pleTitle| |000060e0| 3a 20 41 52 52 41 59 20 | 5b 30 2e 2e 31 5d 20 4f |: ARRAY |[0..1] O| |000060f0| 46 20 43 48 41 52 3b 0d | 0d 09 42 45 47 49 4e 0d |F CHAR;.|..BEGIN.| |00006100| 09 09 61 70 70 6c 65 54 | 69 74 6c 65 5b 30 5d 20 |..appleT|itle[0] | |00006110| 3a 3d 20 61 70 70 6c 65 | 4d 61 72 6b 3b 0d 09 09 |:= apple|Mark;...| |00006120| 61 70 70 6c 65 54 69 74 | 6c 65 5b 31 5d 20 3a 3d |appleTit|le[1] :=| |00006130| 20 30 43 3b 0d 09 09 61 | 70 70 6c 65 49 44 20 3a | 0C;...a|ppleID :| |00006140| 3d 20 31 3b 0d 20 09 09 | 61 70 70 6c 65 4d 65 6e |= 1;. ..|appleMen| |00006150| 75 20 3a 3d 20 4e 65 77 | 4d 65 6e 75 28 61 70 70 |u := New|Menu(app| |00006160| 6c 65 49 44 2c 20 61 70 | 70 6c 65 54 69 74 6c 65 |leID, ap|pleTitle| |00006170| 29 3b 0d 09 09 49 46 20 | 4c 65 6e 67 74 68 28 61 |);...IF |Length(a| |00006180| 62 6f 75 74 54 69 74 6c | 65 29 20 3e 20 30 20 54 |boutTitl|e) > 0 T| |00006190| 48 45 4e 0d 09 09 09 64 | 6f 41 62 6f 75 74 20 3a |HEN....d|oAbout :| |000061a0| 3d 20 54 52 55 45 3b 0d | 09 09 09 41 70 70 65 6e |= TRUE;.|...Appen| |000061b0| 64 4d 65 6e 75 28 61 70 | 70 6c 65 4d 65 6e 75 2c |dMenu(ap|pleMenu,| |000061c0| 20 61 62 6f 75 74 54 69 | 74 6c 65 29 3b 0d 09 09 | aboutTi|tle);...| |000061d0| 09 41 70 70 65 6e 64 4d | 65 6e 75 28 61 70 70 6c |.AppendM|enu(appl| |000061e0| 65 4d 65 6e 75 2c 20 22 | 28 2d 22 29 3b 0d 09 09 |eMenu, "|(-");...| |000061f0| 09 61 70 70 6c 65 41 62 | 6f 75 74 50 72 6f 63 20 |.appleAb|outProc | |00006200| 3a 3d 20 61 62 6f 75 74 | 50 72 6f 63 3b 0d 09 09 |:= about|Proc;...| |00006210| 45 4e 44 3b 0d 09 09 41 | 64 64 52 65 73 4d 65 6e |END;...A|ddResMen| |00006220| 75 28 61 70 70 6c 65 4d | 65 6e 75 2c 20 22 44 52 |u(appleM|enu, "DR| |00006230| 56 52 22 29 3b 0d 09 09 | 53 6b 65 6c 4d 65 6e 75 |VR");...|SkelMenu| |00006240| 28 61 70 70 6c 65 4d 65 | 6e 75 2c 20 44 6f 41 70 |(appleMe|nu, DoAp| |00006250| 70 6c 65 49 74 65 6d 2c | 20 44 6f 41 70 70 6c 65 |pleItem,| DoApple| |00006260| 43 6c 6f 62 62 65 72 29 | 3b 0d 09 45 4e 44 20 53 |Clobber)|;..END S| |00006270| 6b 65 6c 41 70 70 6c 65 | 3b 0d 0d 0d 09 28 2a d1 |kelApple|;....(*.| |00006280| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00006290| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000062a0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000062b0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |000062c0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 0d 09 09 09 09 09 09 |........|........| |000062d0| 09 09 09 57 69 6e 64 6f | 77 20 48 61 6e 64 6c 65 |...Windo|w Handle| |000062e0| 72 20 49 6e 74 65 72 66 | 61 63 65 20 28 50 75 62 |r Interf|ace (Pub| |000062f0| 6c 69 63 29 20 52 6f 75 | 74 69 6e 65 73 0d 09 d1 |lic) Rou|tines...| |00006300| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00006310| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00006320| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00006330| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00006340| d1 d1 d1 d1 d1 d1 d1 d1 | d1 2a 29 0d 0d 09 28 2a |........|.*)...(*| |00006350| 0d 09 09 49 6e 73 74 61 | 6c 6c 20 68 61 6e 64 6c |...Insta|ll handl| |00006360| 65 72 20 66 6f 72 20 61 | 20 77 69 6e 64 6f 77 2e |er for a| window.| |00006370| 20 20 52 65 6d 6f 76 65 | 20 61 6e 79 20 70 72 65 | Remove| any pre| |00006380| 76 69 6f 75 73 20 68 61 | 6e 64 6c 65 72 2e 20 20 |vious ha|ndler. | |00006390| 50 61 73 73 20 66 6f 6c | 6c 6f 77 69 6e 67 3a 0d |Pass fol|lowing:.| |000063a0| 0d 09 09 74 68 65 57 69 | 6e 64 09 09 09 50 6f 69 |...theWi|nd...Poi| |000063b0| 6e 74 65 72 20 74 6f 20 | 73 75 62 6a 65 63 74 20 |nter to |subject | |000063c0| 77 69 6e 64 6f 77 20 28 | 63 72 65 61 74 65 64 20 |window (|created | |000063d0| 62 79 20 68 6f 73 74 29 | 2e 0d 09 09 70 4d 6f 75 |by host)|....pMou| |000063e0| 73 65 09 09 09 41 64 64 | 72 65 73 73 20 6f 66 20 |se...Add|ress of | |000063f0| 6d 6f 75 73 65 20 63 6c | 69 63 6b 20 68 61 6e 64 |mouse cl|ick hand| +--------+-------------------------+-------------------------+--------+--------+ Only 25.0 KB of data is shown above.